public static boolean isBottom(RecyclerView recyclerView){
LinearLayoutManager mLayoutManager = (LinearLayoutManager) recyclerView.getLayoutManager();
//屏幕中最后一个可见子项的position
int lastVisibleItemPosition = mLayoutManager .findLastVisibleItemPosition();
//当前屏幕所看到的子项个数
int visibleItemCount = mLayoutManager .getChildCount();
//当前RecyclerView的所有子项个数
int totalItemCount = mLayoutManager .getItemCount();
//RecyclerView的滑动状态
int state = recyclerView.getScrollState();
//scrollState有三种状态,分别是开始滚动(SCROLL_STATE_FLING),正在滚动(SCROLL_STATE_TOUCH_SCROLL), 已经停止(SCROLL_STATE_IDLE)
if(visibleItemCount > 0 && lastVisibleItemPosition == totalItemCount - 1 && state == recyclerView.SCROLL_STATE_IDLE){
return true;
}else {
return false;
}
}
关于实现RecyclerView不满一屏幕时自动请求更多数据
最新推荐文章于 2021-03-10 15:21:52 发布