Open ainiu opened 7 years ago
if (mLoadMoreListener != null && mLoadMoreEnabled) { if (currentScrollState == RecyclerView.SCROLL_STATE_IDLE) { RecyclerView.LayoutManager layoutManager = getLayoutManager(); int visibleItemCount = layoutManager.getChildCount(); int totalItemCount = layoutManager.getItemCount(); if (visibleItemCount > 0 && lastVisibleItemPosition >= totalItemCount - 1 && totalItemCount > visibleItemCount //这里 && !isNoMore && !mRefreshing) {
mFootView.setVisibility(View.VISIBLE); if (mLoadingData) { return; } else { mLoadingData = true; mLoadMoreFooter.onLoading(); mLoadMoreListener.onLoadMore(); } } } **}******
感谢反馈!
你好,分页的逻辑是一页的数据至少能填充当前屏幕,如果不能,则可以通过修改每页加载的数量(一般就是增加pageSize),如有问题再反馈!
totalItemCount > visibleItemCount 这个判断visibleItemCount的时候没有减去headerview和footview的个数,会造成添加headerview或footerview的时候可能无法加载更多,即使数据填充当前屏幕 @jdsjlzx
if (mLoadMoreListener != null && mLoadMoreEnabled) { if (currentScrollState == RecyclerView.SCROLL_STATE_IDLE) { RecyclerView.LayoutManager layoutManager = getLayoutManager(); int visibleItemCount = layoutManager.getChildCount(); int totalItemCount = layoutManager.getItemCount(); if (visibleItemCount > 0 && lastVisibleItemPosition >= totalItemCount - 1 && totalItemCount > visibleItemCount //这里 && !isNoMore && !mRefreshing) {