0

私のアプリケーションでは、WebサービスからXML形式でデータをフェッチし、それを解析してリストビューにデータを表示しています。問題は、Webサービスに5000個のオブジェクトが含まれている場合、データの表示に時間がかかることです。

リストビューにいくつかのデータを表示し、リストの最後で同時にデータをフェッチすることは可能ですか?

サンプルコードを教えてください。

4

2 に答える 2

0

AsyncTask を使用すると、フェッチされている各オブジェクトを publishProgress() メソッドを使用してリストビューに表示しながら、ロードされたデータの割合についてユーザーを更新できるため、これを簡単に行うことができます。

アップデート:

ちなみに、あなたの状況に応じて、commonsware https://stackoverflow.com/users/115145/commonswareによって開発された以下のツールが最適です...

https://github.com/commonsguy/cwac-endless

cwac-endless: EndlessAdapter を提供します。これは、「エンドレス リスト」機能を追加する既存の ListAdapter のラッパーです。ユーザーがリストの一番下までスクロールすると、このリストに取得するデータが他にもある場合、バックグラウンド スレッドでコードが呼び出されて新しい行がフェッチされ、リストの一番下にシームレスに追加されます。

于 2012-06-04T09:33:34.860 に答える
0

ListAdapter の getView メソッドで convertView を使用する場合、ビューが再利用されるため、リスト内にいくつの項目があるかは問題ではありません。

Listadapter が som ソートの配列を取る場合、配列にアイテムを継続的に追加して呼び出すことができます

mListAdapter.notifyDataSetChanged();

新しいデータがリストに追加されるたびに。

于 2012-06-04T09:34:50.997 に答える