RecycleView加载不同类型的Item

本文介绍了如何使用RecycleView实现加载不同类型的Item,包括创建不同布局文件、数据bean类、通用bean类、ViewHolder以及Adapter,并在Activity中使用RecycleView。详细步骤包括:创建item布局、数据bean、通用bean、ViewHolder,以及重写Adapter的相关方法。
摘要由CSDN通过智能技术生成

前情提要:去面试一家外企,需求是要重复使用一个布局很多次,单单是布局的话用include就可以了,但是逻辑也要复用,而且提出了使用listview复用条目优化性能,想做成一个自定义控件。我尝试了下,感觉直接用recycleview应该也是可以的。

效果展示


效果
实现思路

  1. 添加依赖
    com.android.support:recyclerview-v7:24.2.0
  2. 根据需求创建三个不同类型的item对应的布局文件
  3. 为每个类型的item创建数据bean类
  4. 创建通用的item数据bean类
  5. 为每个类型的item创建viewholder
  6. 创建Adapter类
  7. 在Activity使用recycleview
1.创建不同的item布局文件

  • 包括一个编辑框子项,一个按钮子项,一个下拉列表子项。
    布局文件就不放出来了,类似模仿下就可以。源代码项目中有。
2. 为每个类型的item创建数据bean类

  • 封装了每个item需要赋值的数据。
3. 创建通用的item数据bean类

  • 我们需要一个通用的数据项RecycleViewItemData来方便我们使用和进行子项的类型判断。
public class RecycleViewItemData<T> {
    //用来装载不同类型的item数据bean
    T t;
    //item数据bean的类型
    int dataType;
    public RecycleViewItemData () {
    }

    public RecycleViewItemData (T t, int dataType) {
        this.t = t;
        this.dataType = dataType;
    }

    public T getT () {
        return t;
    }

    public void setT (T t) {
        this.t = t;
    }

    public int getDataType () {
        return dataType;
    }

    public void setDataType (int dataType) {
        this.dataType = dataType;
    }
}
3. 为每个类型的item创建viewholder

  1. EditViewHolder

    public class EditViewHolder extends RecyclerView.ViewHolder {
         public TextView mTextView1;
         public 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值