首先就是导入依赖
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.0.4-4' //智能刷新库 implementation 'com.scwang.smartrefresh:SmartRefreshHeader:1.0.4-4'
代码
private void setpullrefresh(){ //设置 Header 为 MaterialHeader(下拉刷新) refreshLayout.setRefreshHeader(new ClassicsHeader(this));//这里是刷新的样式可以改为 // refreshLayout.setRefreshHeader(new MaterialHeader(this).setShowBezierWave(true));另外一种自带的样式 //设置 Footer 为 经典样式(上拉加载) refreshLayout.setRefreshFooter(new ClassicsFooter(this)); refreshLayout.setOnRefreshListener(new OnRefreshListener() { @Override public void onRefresh(RefreshLayout refreshlayout) { //在这里执行上拉刷新时的具体操作(网络请求、更新UI等) //presenter.loadShopCart(AppData.getInstance().getUserId());(这个地方是加载网络数据,必须写,不然刷新不成功) refreshlayout.finishRefresh(2000/*,false*/); //不传时间则立即停止刷新 传入false表示刷新失败 } }); }
XML
<com.scwang.smartrefresh.layout.SmartRefreshLayout android:id="@+id/refreshLayout" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/tvv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="@dimen/x20" android:text="杨" /> <ImageView android:layout_width="@dimen/x20" android:layout_height="@dimen/x1" android:src="@mipmap/ic_launcher" /> </com.scwang.smartrefresh.layout.SmartRefreshLayout>