0
私が行ったSQLiteデータベースからリストビューを実装したいと思います。しかし、今私はリストビューsetOnScrollListenerでページネーションを実装したいと思います。最初の50レコードを表示しているときにリストの最後にスクロールするとプログレスバーを実行します。リストビューのページ作成に5日間かかっていますが、正常に動作していません。この問題を解決するのに手伝ってもらえますか?AndroidのSQLiteデータベースからListViewページネーションを実装する方法は?
ここに私のコードです。
listView.addFooterView(footer);
// Implementing scroll refresh
listView.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView absListView, int i) {
}
@Override
public void onScroll(AbsListView absListView, int firstItem, int visibleItemCount, final int totalItems) {
//Log.e("Get position", "--firstItem:" + firstItem + " visibleItemCount:" + visibleItemCount + " totalItems:" + totalItems + " pageCount:" + pageCount);
int total = firstItem + visibleItemCount;
Log.e("", "onScroll LocalPages=" + LocalPages);
// Total array list i have so it
if (pageCount < LocalPages) {
if (total == totalItems) {
// Execute some code after 8 seconds have passed
Handler handler = new Handler();
handler.postDelayed(new Runnable()
{
public void run()
{
listView.addFooterView(footer);
OFFSET = pageCount * 50 ;
//Log.e("","After OFFSET pageCount =" + pageCount + " OFFSET value ="+OFFSET);
List<All_Post> allDesc = dbhelper.getAllDescriptions(OFFSET);
for (All_Post all_Post : allDesc)
{
descArray.add(all_Post);
}
if(adapter != null)
{
adapter.notifyDataSetChanged();
listView.setAdapter(adapter);
listView.setSelection(totalItems);
pageCount += 1;
Log.e(""," pageCount =" + pageCount + " LocalPages="+LocalPages);
}
}
}, 2000);
}
} else {
Log.e("hide footer", "footer hide");
listView.removeFooterView(footer);
}
}
});
「私は、リストビューページネーションに取り組ん5日以来、多くの時間をしようとしているが、それは正しく動作していません。」 3月23日に5日間作業していましたが、今日は3月29日ですので、10日以上作業しています。私はすでに2つの作業ソリューションを提供しています。それを受け入れたいですか? – pskink
OnScrollListenerで「プル・トゥ・リフレッシュ」を使うことができます – rockstar
はい私はそれを知っています。私はすでにSimpleCursorAdapterを使用したくありません。私はすでにArray-Adapterと多くのコードを使用していますので、私は変更できません。 – jandroid