给listview设置滑动到底部自动加载的时候 当你滑动到底部有时候会一直加载不停,针对这个问题我搞了一种解决方案,看代码下面都有注释
/**页数点击之后也得清零,获取数据成功之后增加一页*/
int i = 1;
/**
* 此处出现BUG滑动过程中会一直在加载 用total来记录最后一项的位置
* 当totalcount<totalItemCount的时候就记录此值并加载数据
* 当加载完成再次滑动时totalItemcount已经发生变化而totalcount是记录的最后的值
* 二者不记载到最后会一直不相同所以当totalcount不小于totalitemcount的时候就让直接返回不在加载数据
* */
int totalcount;
OnScrollListener onscrollerlistener = new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {
System.out.println(view.getLastVisiblePosition() + "stocket"
+ (Data.size() - 1));
}
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
if ((firstVisibleItem + visibleItemCount) == (totalItemCount)) {
if (totalcount < totalItemCount) {
totalcount = totalItemCount;
Total_params.put("pagenum", i);
getStockData(Total_params, false);
} else {
return;
}
}
}
};
本文介绍了一种解决ListView滑动到底部时持续加载的问题的方法。通过记录最后一项位置并在加载完成后更新,避免了重复加载。代码中详细解释了实现原理。
862

被折叠的 条评论
为什么被折叠?



