1

FragmentPagerAdapterユーザーが左右にスワイプするとフラグメントを追加するaを使用したアクティビティがあります。

追加されるこの子フラグメントは現在静的でありListView、アイテムが含まれています。AysncTaskアイテムを使用して入手するつもりですListViewが、このプロセスには10〜15秒かかる場合があります。

私はまだいくつかのことで迷っています:

どのメソッドからAsyncTask呼び出す必要がありますか?それはのonCreate方法でしょうFragmentか?フラグメントにフォーカスがあるときにのみAsyncTask呼び出されるようにします。

ただし、最大の問題は、読み込みAysncTask中にユーザーが画面からスワイプするとどうなるかということです。AsyncTaskアクティビティは破棄されますか?アクティビティが破壊されるのを防ぐ方法はありますか?これを行わないと、によって行われたすべての進行状況AsyncTaskが失われ、それが焦点になったAsyncTaskときに再度呼び出す必要があります。Fragment

ありがとう。


遅い理由:

私は約150レコードのページをスクレイピングしていますが、jSoupは本当に本当に遅いです。サービスを使用しない場合の問題は、データが変更される可能性が高く、データを「事前にスクレイピング」したくないということです。

@FildorLoaderは、重労働を行うためにを使用することを提案しました。実装をざっと見てみると、Loader向きの変更など、短期間にデータを保持できることがわかりました。ViewPagerのスイングFragmentsがデータをLoader一時的に保持できるかどうかはまだ疑問です。

4

2 に答える 2

2

ローダーについて聞いたことがありますか?まさにそれがあなたが使いたいものだと思います...

于 2012-09-28T12:34:15.517 に答える
0

FragmentStatePagerAdapterを使用する と、フラグメントのonCreateViewからasyncTaskを簡単に開始できます。

于 2013-11-18T13:56:59.933 に答える