我正在使用带有自定义行的列表视图,每个项目都有两个图像和一些文本字段。
当用户滚动到底部时:
我想从我的网络服务中加载更多数据。
在列表视图页脚中添加加载程序。
目前我正在以这种方式这样做
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()会重置列表数据并通过反复设置来使图像闪烁。
我需要帮助来解决这些问题: