上一篇讲了RecycleView的简单使用,如果还不清楚RecycleView的简单使用的,可以看https://blog.csdn.net/adaixiaoxiao/article/details/96976275
RecyclerView虽然作为ListView的替代者有着较好的性能提升,但是ListView常用的addHeaderView,addFooterView,在RecyclerView中没有提供这个方法,我们应该如何为列表添加头部和底部呢?通过看ListView的源码可以知道ListView的添加Header和Footer是靠Adapter里面动态添加的,所以我们按照这个思路也给RecyclerView添加HeaderView和FooterView,先看一下效果
实现核心:RecyclerView实现添加HeaderView和FooterView的核心就是在Adapter里面的onCreateViewHolder根据viewType来判断是列表项还是HeaderView来分别加载不同的布局文件,下面来看下具体的实现代码和步骤。
- 第一步还是引入recyceview的依赖
implementation ‘com.android.support:recyclerview-v7:28.0.0
2. RecyclerView的Adapter,在getItemViewType方法里面判断了当前Item的类型,然后在onCreateViewHolder跟据item的类型分别加载不同的布局以实现HeaderView和FooterView,参考以下代码
public class RecyAttendanceAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
private Context mContext;
private List<String> mDatas;
//item类型
public static final int ITEM_TYPE_HEADER = 0;
public static final int ITEM_TYPE_CONTENT = 1;