最近开发,有个需求,网格布局的地步,需要添加底部footer,展示隐私权政策,本以为像listview一样很容易的add就好了,结果recycleview并没有这样的功能。项目中基本的recycleview并不能满足刷新和加载更多的操作,所以一直使用的是xrecycleview。奈何xrecycleview中只有addHead方法,项目中所需要的addfooter,并没有实现。所以仿照xrecycleview中的addhead方法,创建一个包裹器,添加addfooter方法。代码如下
/**
* Describe:
* <p>
* Author: zhuxuanmuyu
* Date: 2020/6/28
* Email: lxm20819@sina.com
*/
public class RechargeWrapperAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
public static final int BASE_ITEM_TYPE_HEADER = 100000;
public static final int BASE_ITEM_TYPE_FOOTER = 200000;
private SparseArrayCompat<View> mHeaderViews = new SparseArrayCompat<>();
private SparseArrayCompat<View> mFooterViews = new SparseArrayCompat<>();
private RecyclerView.Adapter mInnerAdapter;
public RechargeWrapperAdapter(RecyclerView.Adapter innerAdapter) {
mInnerAdapter = innerAdapter;
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
if (mHeaderViews.get(viewType) != null) {
return new MyViewHolder(mHeaderViews.get(viewType));
} else
if (mFooterViews.get(viewType) != null) {