RecyclerView的基本用法
和百分比布局类似,RecyclerView也是新增布局,因此需要在项目的build.gradle添加相应的依赖库才行。
打开app/build.gradle文件,在dependencies闭包中添加如下内容
implementation 'androidx.recyclerview:recyclerview:1.0.0'
首先为RecyclerView准备一个适配器,
新建FruitAdapter类,让它继承RecyclerView.Adapter,
其中泛型指定为FruitAdapter.ViewHolder,
ViewHolder是FruitAdapter中定义的一个内部类
public class RvAdapter extends RecyclerView.Adapter {
//定义了一个内部类ViewHolder,它继承自 RecyclerView.ViewHolder ,在ViewHolder的构造函数当中传入item的view参数
//用获取item的view视图
static class ViewHolder extends RecyclerView.ViewHolder{
View textview;
public ViewHolder(@NonNull View itemView) {
super(itemView);
textview=itemView.findViewById(R.id.item);
}
}
//定义构造方法获取数据源
private List<item> itemdata;
public RvAdapter(List<item> itemdata){
this.itemdata=itemdata;
}
然后实现继承方法,必须重写 onCreateViewHolder()、 onBindViewHolder()、 getItemCount() 这3个方法。
onCreateViewHolder() 方法是用来创建ViewHolder实例的。把item布局加载进来,然后创建一个ViewHolder实例,并把加载进来的布局传递到ViewHolder构造函数当中,最后把ViewHolder实例返回。
onBindViewHolder() 方法是对RecyclerView的子项数据进行赋值的。会通过position参数得到当前项的item实例,然后将数据设置到ViewHolder创建的实例当中
getItemCount() 方法返回子项长度,直接返回数据源的长度就可以
}