私はpdfドキュメントを読むことができるアプリケーションに取り組んでおり、pdfページでズームとパンを実装しようとしています。Androidの同じビューでスクロール、フリング、タップ、ズーム、パンを調整する
ページはビットマップとして読み込まれ、ImageViewに表示されます。スクロール可能な下部のカスタムナビゲーションバーを使用してドキュメント内のページをナビゲートするなどの他の機能も既に実装されています。
また、ユーザーがページをタップして次のタップで非表示になったときに下のバーが表示され、羽ばたくときにユーザーはドキュメントの次/前のページに移動できるはずです。こうしたスクロール、タップや情事など
すべての機能は、読者の活動にOnGestureListener
を実装することで処理され、私はページを含むImageView
に設定されているOnTouchListener
実装にズームやパンを行うにしようとしています。
コードは機能しているように見えますが、他のイベント、特にスクロールの一部が干渉しているため、速度が遅くなっているようです。 OnGestureListener
はonFling
、onTapUp
とonScroll
のGestureDetectorの処理に使用されているので、すべてを両立について移動する良い方法がある場合
私の質問は、私は、ズーム/パンを追加するための良い方法を見つけることができませんこれによってサポートされているメソッドの1つでコード化します。
誰かが1つのビューでこれらすべてのイベントを処理した経験がある場合、またはこれに関するいくつかの良い提案/チュートリアルがあれば、私は非常に感謝します。
おそらくImageViewの代わりにCanvasオブジェクトを試してみるべきでしょうか? – Dororo
実際には、イベントやコンポーネントをよりうまく編成する方法が必要ですが、私はこれで初めてですし、いくつかの提案を聞きたいと思います。 Canvasの提案をありがとう。 – r1k0