XRecycleView:
XRecycleView是RecycleView的封装,使用和RecycleView完全一样,只是这个控件内封装了,上拉下拉的监听方法,也为了条目刷新加载&分页加载为所用,具体看文档源码,项目地址:GitHub-XRecycleView。
效果图:
依赖:
implementation 'com.jcodecraeer:xrecyclerview:1.5.9'
解决冲突:
configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested = details.requested if (requested.group == 'com.android.support') { if (!requested.name.startsWith("multidex")) { details.useVersion '28.0.0' //此处填写你项目使用的sdk版本 } } } }
xml布局:
<com.jcodecraeer.xrecyclerview.XRecyclerView
android:id="@+id/xrlv_circle"
android:layout_width="match_parent"
android:layout_height="match_parent">
</com.jcodecraeer.xrecyclerview.XRecyclerView>
代码:
//控件
XRecyclerView xrlv = view.findViewById(R.id.xrlv_circle);
/**
* XRecycleView配置
*/
//布局管理器
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getActivity());
xrlv.setLayoutManager(linearLayoutManager);
//设置条目之间的的间距
xrlv.addItemDecoration(new SpaceItemDecoration(30));
//添加分割线
xrlv.addItemDecoration(new DividerItemDecoration(getActivity(),DividerItemDecoration.VERTICAL));
//上拉下拉监听
xrlv.setLoadingListener(new XRecyclerView.LoadingListener() {
@Override
public void onRefresh() {
//下拉刷新
handler.postDelayed(new Runnable() {
@Override
public void run() {
//3s刷新
xrlv.refreshComplete();
}
}, 3000);
}
@Override
public void onLoadMore() {
//上拉加载
handler.postDelayed(new Runnable() {
@Override
public void run() {
//3s加载
xrlv.loadMoreComplete();
}
}, 3000);
}
});
多条目展示&点击监听:https://blog.csdn.net/weixin_43917449/article/details/87386988
详细(刷新加载各种样式):https://blog.csdn.net/jun_tong/article/details/80676723