私は3つのフラグメントを保持するViewPagerを使用していますが、各フラグメントはリストをロードします。問題は、アプリケーションが初めて実行され、次のフラグメントにスワイプするときです。このフラグメントは、そのビューが表示されるまでにロードする必要があります(約2秒)。これは非常に奇妙な動作です。私が望むのは、アプリケーションが起動した後で、ViewPagerのすべてのフラグメントがユーザーのために準備されている必要があるため、フラグメントをスワイプするときに待ち時間がないことです。どうやってやるの?最初の実行時にViewPagerのフラグメントのプレビューを
答えて
(ViewPagerの初期化後)onCreate()でsetOffscreenPageLimit()
を呼び出してください。 OffscreenPageLimitは、現在のページのいずれかの側に保持する必要があるページ数を設定します(ケース2)。これでフラグメントのすべてがインスタンス化されます。
(その他(2秒のロード時間が良い音していないため強くお勧めします)可能性は、あなたのリストやlistadaptersのパフォーマンスを向上させることである)
実際に '2 'に設定すると、3つのフラグメントがすべて確実に保持されます。この値は、現在のページ**のいずれかの側に保持する必要があるページ数を設定し、総ページ数ではありません。 –
はい、わかっています。しかし、限界値を '100'に設定することもできますが、それでも動作します;-)これはほんの一例です。もちろん、彼が望むならば限界値を' 2 'に設定することもできます。 – Namenlos
その場合は、なぜあなたの答えで* "あなたの場合** 3 **" *と答えるのですか?それは正しくないと私にあなたが知らなかったことを伝えるので、私はもともとそれを指摘するコメントを追加した理由です。 –
- 1. Androidでの実行時エラーViewPagerとフラグメントを使用したTabLayout
- 2. ViewPager最初の2つのフラグメントが順不同
- 3. ViewPagerは最初のフラグメントからTextviewsを表示します
- 4. android- viewpager setCurrentItem最初のフラグメントをロードしません。
- 5. 最初の実行時にDockerコピーコンテナボリュームファイル
- 6. エアアプリケーションの最初の実行時に関数を実行
- 7. ViewPagerスライドが最初と最後のフラグメントをスキップしています
- 8. 円形ViewPager。最初のラウンド後にフラグメントが正常に動作しない
- 9. ViewPagerで最初に読み込まれたときの黒いフラグメント
- 10. ViewPagerのAndroidオープン・フラグメント
- 11. 最初の実行時に2つのコンポーネントをレンダリングする
- 12. 最初の実行時にJavaScriptのサイズを変更する
- 13. 最初の実行時にヘッダーの下にあるコンテンツ
- 14. フラグメントのヌルを返すViewpager
- 15. フラグメント内ViewPagerは子フラグメントをロードするのに時間がかかります
- 16. 最初の実行時にのみプログラムがハングアップしますか?
- 17. 最初の実行時にオーバーレイツールチップを表示
- 18. コアデータ:最初の実行時にデータベースを作成したい
- 19. Jenkins;最初の失敗時にスクリプトを実行
- 20. 最初のDjango起動時にコードを実行
- 21. AFnetworkingは最初の実行時にnullを返します
- 22. アクティビティ内のフラグメント内のViewPager
- 23. ViewPagerのdisapearフラグメントの移動
- 24. アプリの最初の実行
- 25. 最初の起動時にフラグメントの同期呼び出しが実行されず、エラーデータが返される
- 26. 1つのフラグメントから別のフラグメントにデータを渡す| ViewPagerフラグメントの内容を変更する(ViewPager内)
- 27. Android:tablayout/viewpagerフラグメントまたはアクティビティ内のフラグメント
- 28. viewpager最初の2ページ同じ
- 29. フラグメント2番目のフラグメントから最初のフラグメントへのスタックバック
- 30. execLinkedOpの最初の実行時のCArtAgO(JaCaMo)のjava.lang.IllegalMonitorStateException
あなたがFragmentPageAdapterやFragmentStatePageAdapterを使用していますか? – Delyan
あなたが考えていることは、アクティビティ(またはページャ)のフラグメントリストアダプタをキャッシュすることです。これにより、各ページの変更時にアダプタがリロードされなくなります。 – AedonEtLIRA
@Delyan私はFragmentPagerAdapterを使用します –