我曾尝试在RecyclerView无限滚动中显示页脚,但页脚有时显示得太快,有时在all.Is上不显示,在给定的代码中有问题吗??
public class CustomRecyclerViewScrollListener extends RecyclerView.OnScrollListener {
int visibleCount = 0;
int totalItemCount = 0;
int pastVisibleItems = 0;
int lastVisibleItem=0;
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
visibleCount = llm.getChildCount();
totalItemCount = llm.getItemCount();
pastVisibleItems = llm.findFirstVisibleItemPosition();
lastVisibleItem=llm.findLastVisibleItemPosition();
if (!isLoading && !dataFinished && list.size() % 10 == 0) {
if ((visibleCount + pastVisibleItems) >= totalItemCount) {
isLoading = true;
loadMore();
adapter.showViewHolderFooter();
}
}
} else {
adapter.hideViewHolderFooter();
}
}
发布于 2016-07-26 15:00:08
private int firstVisibleItem, visibleItemCount,totalItemCount,pastVisiblesItems;
private boolean loading = true;
reyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
if (dy > 0) //check for scroll down
{
visibleItemCount = mLayoutManager.getChildCount();
totalItemCount = mLayoutManager.getItemCount();
pastVisiblesItems = mLayoutManager.findFirstVisibleItemPosition();
if (loading) {
if ((visibleItemCount + pastVisiblesItems) >= totalItemCount) {
loading = false;
expandapleInt++;
//Your operation
}
}
}
}
});
在我的代码中,对于每个操作,在每次加载开始之前,将代码中的loading = true;
设置为false
https://stackoverflow.com/questions/38582632
复制相似问题