所以,在我的onCreate方法中,我有一个监听器,看看列表是否在底部。如果是,则更新startLoop和endLoop以添加接下来的10个列表项,并调用我的FillLocations任务将它们添加到列表视图中。这一切都很好,花花公子。
listView.setOnScrollListener(new OnScrollListener() {
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
if(listView.getLastVisiblePosition() == listView
.getAdapter().getCount() - 1) {
startLoop += 10;
endLoop += 10;
FillLocations myList = new FillLocations();
myList.execute();
}
}
});
我有一个操作栏操作(“刷新”),点击一下,将startLoop和endLoop设置为0和10,然后调用我的FillLocations任务。这仅适用于前10个列表;当我到达那10个听力的底部时,它不会再加载。这告诉我单击此操作按钮后滚动侦听器不再正在侦听。关于如何解决这个问题的任何想法?
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.action_refresh) {
adapter.clear();
adapter.notifyDataSetChanged();
startLoop = 0;
endLoop = 10;
FillLocations myFill = new FillLocations();
myFill.execute();
}
return super.onOptionsItemSelected(item);
}