在Android应用中单击操作栏项后,Scroll Listener将停止聆听

时间:2014-07-22 20:26:29

标签: java android listener

所以,在我的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);
}

0 个答案:

没有答案