滚动到底部并添加页脚加载视图时,Android列表视图会加载更多项目

时间:2016-09-22 11:25:42

标签: android json rest listview android-volley

我正在使用带有自定义行的列表视图,每个项目都有两个图像和一些文本字段。

当用户滚动到底部时:

  • 我想从我的网络服务中加载更多数据。

  • 在列表视图页脚中添加加载程序。

目前我正在以这种方式这样做

listView.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 (postAdapter == null)
                return;
            if (postAdapter.getCount() == 0)
                return;
            int l = visibleItemCount + firstVisibleItem;
            if (l >= totalItemCount && !refreshLayout.isRefreshing()) {
                 listView.addFooterView(footer);
                 dataIfInternet(0);
            }
        }

它做什么: 当用户滚动到底部并作为最后一项的一部分可见时

  • 开始加载数据。

  • 添加页脚视图。

但是有些问题我不想要这些:

  • 一直持续到最后一项可见。

  • 因为添加和删除页脚视图调用notifyDataSetChanged()会重置列表数据并通过反复设置来使图像闪烁。

images blinking

我需要帮助来解决这些问题:

  • 克服重置时闪烁的图像。并以某种方式重置数据而不闪烁。
  • 当最后一个项目几乎看不到时,不加载数据,而不是这个我想在最后y轴点滚动时重新加载数据,当没有剩余区域要滚动时(甚至不是1个像素)。

0 个答案:

没有答案