在滚动方法调用后,在listview末尾滚动数据加载它将占用列表的第一个元素

时间:2016-10-21 10:57:02

标签: android listview

我在列表视图上使用滚动侦听器,我正在加载列表末尾的数据,它正在加载但是在每次滚动请求后,它会带我到第一页,我希望列表在我滚动时应该是稳定的并且不会先移动并加载数据。

searchListview.setOnScrollListener(new AbsListView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(AbsListView view, int scrollState) {
            }

            @Override
            public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

                if ((firstVisibleItem + visibleItemCount) >= totalItemCount ) {
                   // I am loading data here
                }
            }
        });

1 个答案:

答案 0 :(得分:0)

这是因为您每次调用请求时都在listview上设置new yourAdapter。当且仅当您的适配器为空时,您需要检查该操作。如果它不为null,则可以调用yourAdapter.notifyDataSetChanged();

注意:请勿在后续通话中清除您的数据。