1.SmartRefreshLayout+RecyclerView使用。
项目build.gradle引入
//核心必须依赖 implementation 'com.scwang.smart:refresh-layout-kernel:2.0.3' //经典刷新头 implementation 'com.scwang.smart:refresh-header-classics:2.0.3'
<com.scwang.smart.refresh.layout.SmartRefreshLayout
android:id="@+id/swipe_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/color_F2F2F2"
android:visibility="gone">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_fan"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none"> </androidx.recyclerview.widget.RecyclerView>
</com.scwang.smart.refresh.layout.SmartRefreshLayout>
2.基础使用。
//设置头部下拉刷新 swipeRefresh.setRefreshHeader(new ClassicsHeader(this)); //设置脚步上拉加载 swipeRefresh.setRefreshFooter(new ClassicsFooter(this)); //数据不满一页时,禁止上滑(不设置,数据不满一页上滑,不能自动完全回弹,第一个item会被覆盖。) swipeRefresh.setEnableLoadMoreWhenContentNotFull(false); //设置加载完成,脚部跟随数据显示,不设置,默认不显示,上滑时显示。 swipeRefresh.setEnableFooterFollowWhenNoMoreData(true); //下拉刷新监听 swipeRefresh.setOnRefreshListener(new OnRefreshListener() { @Override public void onRefresh(RefreshLayout refreshlayout) { refreshWay = 1; currentPage = 1; mPresenter.getNormalFan(currentPage); } }); //上拉加载监听 swipeRefresh.setOnLoadMoreListener(new OnLoadMoreListener() { @Override public void onLoadMore(RefreshLayout refreshlayout) { refreshWay = 2; currentPage++; mPresenter.getNormalFan(currentPage); } });