有什么事件让我们知道我们几乎到达了gridview中的最后一个数据吗?我的服务器中有很多数据,我想每 100 个数据加载一次数据,所以如果用户一直滚动到第 100 个数据结束,我想再加载 100 个数据并将其放入我的 gridview 中。
还是有其他解决方案?
谢谢。
有什么事件让我们知道我们几乎到达了gridview中的最后一个数据吗?我的服务器中有很多数据,我想每 100 个数据加载一次数据,所以如果用户一直滚动到第 100 个数据结束,我想再加载 100 个数据并将其放入我的 gridview 中。
还是有其他解决方案?
谢谢。
一种解决方案是检查 Adapter 的 getView 方法中的位置,如果该位置接近末端,则加载数据。
gridView.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
if (customAdapter.getCount() > 100) {
if (firstVisibleItem + visibleItemCount >= totalItemCount) {
// add next pack
}
}
}
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
});