30 レコードごとにデータベースからデータをロードするリスト ビューがあります。つまり、最初のヒット リストには 30 項目が含まれ、[さらに表示] をクリックすると 60 項目が含まれます。位置と 2 番目のヒット リストの位置は 61 からというようにします。リストにはすべての値が含まれますが、ビューのクリックごとに開始位置が異なります。
2 に答える
2
個人的には、ユーザーとして、私はそのアプローチがあまり好きではありません。たとえば、Google Play の方法は、私の意見ではよりユーザー フレンドリーです。リストの最後に到達すると、新しいアイテムが自動的に読み込まれ、ほぼシームレスなエクスペリエンスが提供されます。
これを行うには、OnScrollListener を ListView に追加し、ListView.getFirstVisiblePosition()をチェックして、ユーザーがリストの最後に到達したかどうか、さらに項目を読み込む必要があるかどうかを確認します。AsyncTask を使用して、十分に早い段階でロードを行います。結果に応じてアダプターを更新します。
于 2012-07-09T19:23:02.400 に答える
0
実際、それほど複雑ではありませんでした。今日、作業を開始したとき、期待どおりのリストを取得できました。新しい行がリストに追加されるたびに、新しく追加されたアイテムの最初のアイテムから選択を開始するリストを設定しました。 resultList.setSelection(limitVal --29)を使用した行..ここで、limitValは、ビューをクリックするたびに30ずつ増加するため、この操作により、リストが期待される位置から表示されます。
于 2012-07-10T07:23:40.017 に答える