私は難しい問題を抱えており、コミュニティがその実装についてコメントを持っているかどうかを知りたいと思っていました.
ViewPager があり、そこに 20 ページを追加しました。各ページには WebView があります。– これにより、複数の Web サイト間で垂直方向のページ フリッピングが提供されます。デフォルトでは ViewPager として機能するはずですが、ピンチしてズームすると、各ページが縮小し、ViewPager がリスト ビューのようにスクロールします。スムーズな移行が必要であり、2 つのモードが同じ Web コンテンツを使用するため、リスト ビューのような別のビューを使用したくありませんでした。そのため、スムーズな移行に影響を与える可能性のある構築/分解を避けたいと考えています。このスクロール ViewPager をVelocityViewPagerで実装できました。
私がやりたいことは、PC の動作と同じように、スクロールバーを表示して対話を許可しない ListView とは対照的に、スクロールバーを押したままドラッグしてページを下に移動するスクロールバーを追加することです。スクロールバーのように見え、スクロールバーが移動するとViewPagerの偽のドラッグを実行するカスタムビューを作成しました。問題は、ViewPager が保持しているページしかスクロールできないことです。そのため、ViewPager が 20 ページ全体を保持している場合はうまく機能しますが、ページのリサイクルを利用するためにデフォルトで 3 ページを保持すると、3 ページを超えてスクロールしません。指でスクロールするときに通常行う次のページを作成しないかのように。
ViewPager が疑似ドラッグ中に次のページを作成しない理由がわかりません。beginFakeDrag()、endFakeDrag()、fakeDragBy() 以外に何かしなければならないことはありますか? そして、20ページすべてをViewPagerに保持せずにこの動作を実装する方法はありますか?