2

(データベースからの)データがすでにある拡張可能なlistViewがあります。ユーザーがアプリケーションを開くと、「読み込み中」ヘッダーが表示され、その間に新しいデータがインターネットから取得されます。

新しいデータが受信されたら、データベースに保存してカーソルを更新します。古いデータの上に新しいデータが表示されます。

また、インターネットからさらにデータをロードする必要があるかどうかを尋ねるフッターもあります。これで、古いデータの下にフッターが表示されます。新しいデータと古いデータの間、つまり新しいデータの下にビューが必要です。そのビューをクリックすると、新しいデータがインターネットからプルされ、新しいデータの下に古いデータの上にプッシュされます。(私の問題を理解するために、Twitter のタイムラインの例を想像してみてください。)

これを実装するにはどうすればよいですか?

4

1 に答える 1

0

期待どおりに動作するかどうかはわかりませんが、ビューを追加して MergeAdapter (以下のリンク) を試してください。1 つの ListView と 2 つの同じアダプター (古いデータ用と新しいデータ用) があります。間にいくつかのビューがあります-あなたの場合はボタンをロードしています。

MergeAdapter adapter = new MergeAdapter();;
adapter.addAdapter(oldAdapter);
adapter.addView(loadingLayout);
adapter.addAdapter(newAdapter);

MergeAdapter を使用すると、1 つの ScrollBar を使用して 1 つのアクティビティで 2 つの ListView (のようなもの) を表示できます。しかし、追加されたビューを削除する際に問題がありました。このオプションが有効になっているかどうかを確認してください。
MergeAdapter へのリンク: https://github.com/commonsguy/cwac-merge
場合によってはこれが役立つかもしれません: http://pivotallabs.com/users/joe/blog/articles/1759-android-tidbits-6- 22-2011-hiding-header-views

于 2012-10-01T21:24:03.787 に答える