用RecyclerView来实现这个多种不同的Item的加载。
依赖:
implementation 'androidx.recyclerview:recyclerview:1.1.0'
首先我的多条目界面有四个不同的item展示

创建不同item对应的 ViewHolder

跟position值 来返回不同的条目类型

根据↑方法返回的item类型 进行判断

绑定当前ViewHolder
instanceof :严格来说是Java中的一个双目运算符,用来测试一个对象是否为一个类的实例
onCreateViewHolder()返回的ViewHolder不同 所有用instanceof进行判断

展示其他三种item

先放张效果图

轮播图以下这三个item的内层是:TextView + RecyclerView
RecyclerView的布局管理器不同(instanceof 判断里有代码) 布局不同 其他是相同的
适配器代码↓
type 是上边onBindViewHolder()方法里 不同的判断 传递过来的

ViewHolder的创建

//根据传递过来的type值 switch 返回不同的item效果

设置展示数据

//根据type值 判断 返回不同的item数量

又是略微懵逼的一天 2020-03-20
网友评论