当前位置: 代码迷 >> 综合 >> 加载刷新框架!
  详细解决方案

加载刷新框架!

热度:101   发布时间:2023-10-20 15:00:58.0

最近在群里萌新总是问我加载刷新,这里写文章方便他们观看

 

第一步:导入加载刷新库(在app 的build.gradle中)

implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0-alpha-14'

第二步:在自己的BaseApplication中声明 全局的加载刷新的默认样式

//全局设置刷新样式,static 代码段可以防止内存泄露
static {//设置全局的Header构建器SmartRefreshLayout.setDefaultRefreshHeaderCreator(new DefaultRefreshHeaderCreator() {@Overridepublic RefreshHeader createRefreshHeader(Context context, RefreshLayout layout) {layout.setPrimaryColorsId(R.color.transparence, R.color.text_grey);//全局设置主题颜色(背景色,文字颜色)layout.setHeaderHeight(60);return new ClassicsHeader(context).setFinishDuration(0).setDrawableSize(15).setTextSizeTitle(13).setTextSizeTime(10);//.setTimeFormat(new DynamicTimeFormat("更新于 %s"));//指定为经典Header,默认是 贝塞尔雷达Header}});//设置全局的Footer构建器SmartRefreshLayout.setDefaultRefreshFooterCreator(new DefaultRefreshFooterCreator() {@Overridepublic RefreshFooter createRefreshFooter(Context context, RefreshLayout layout) {layout.setPrimaryColorsId(R.color.transparence, R.color.text_grey);//全局设置主题颜色(背景色,文字颜色)//指定为经典Footer,默认是 BallPulseFooterlayout.setHeaderHeight(60);return new ClassicsFooter(context).setFinishDuration(0).setDrawableSize(15).setTextSizeTitle(13);}});
}

 

第三步:在布局xml代码中 用刚导入的这个加载刷新框架去包括你要加载刷新的布局

<com.scwang.smartrefresh.layout.SmartRefreshLayoutandroid:id="@+id/refreshLayout"android:layout_width="match_parent"android:layout_height="match_parent"><!--你的布局 注意 它的用法和srcoview一样只能有一个子view--><RelativeLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"></RelativeLayout></com.scwang.smartrefresh.layout.SmartRefreshLayout>

 

第四步:加载刷新的使用

在java代码中 

//刷新的方法
refreshLayout.setOnRefreshListener(new OnRefreshListener() {@Overridepublic void onRefresh(RefreshLayout refreshlayout) {//你的方法}
});//加载更多的方法
refreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() {@Overridepublic void onLoadMore(@NonNull RefreshLayout refreshLayout) {
//你的方法}
});

 

 

  相关解决方案