RecyclerView分页预加载网络数据

2022-07-31 07:55:43

当还没有滑动到底部,自动请求下一页数据。在baseAdapter里面做如下判断即可

private int preLoad = 5;//倒数第5个就自动加载
private boolean noMoreData = false;//所有数据是否加载完,如果加载完 需要设置为true,以免上划时走预加载回调
protected List<Data> mData;//数据

    @Override
    public final void onBindViewHolder(@NonNull ViewHolder holder, final int position) {
        if (mData!=null&&mData.size()- preLoad == position){
            if (mOnPreLoadListener!=null&&!noMoreData){
                mOnPreLoadListener.onPreload();
            }
        }
       
    }

    public interface OnPreLoadListener{
        void onPreload();
    }
    public OnPreLoadListener mOnPreLoadListener;

    public void setOnPreLoadListener(OnPreLoadListener onPreLoadListener) {
        mOnPreLoadListener = onPreLoadListener;
    }
  • 作者:小蜗牛在漫步
  • 原文链接:https://blog.csdn.net/chenli_001/article/details/125004619
    更新时间:2022-07-31 07:55:43