在日常的开发中用到RecyclerView的地方是非常多的,布局的方式也是有很多种,设置不一样的layoutManger就可以了.双布局应用也越来越多.但是item布局切换在网上我没找到,就花了半天来看看怎么弄.
![](https://img.haomeiwen.com/i7817910/493304c2775a5443.png)
![](https://img.haomeiwen.com/i7817910/9c867994a437c71d.png)
公司的要求就是点击底部的切换按钮可以实现item布局的切换.那就从adapter上着手吧!
1.定义好两个boolean变量通过getItemViewType来判断返回什么布局
![](https://img.haomeiwen.com/i7817910/0250e7cb3266e51f.png)
2.在onCreateViewHolder中操作返回的layout
![](https://img.haomeiwen.com/i7817910/6f683df14c4c2633.png)
3.在onBindViewHolder中创建对外的操作方法
![](https://img.haomeiwen.com/i7817910/dfe64bd52a0cbc72.png)
4.创建两个不同的viewHolder
![](https://img.haomeiwen.com/i7817910/9550ed7b36d858bb.png)
5.最后写一个方法来切换布局
![](https://img.haomeiwen.com/i7817910/e65e2311d27fe5cd.png)
6.adapter就完成了,最后就是使用方法
![](https://img.haomeiwen.com/i7817910/8c9cad5cffa56f8c.png)
最后:当然可以有多种布局切换,可以建立一个map,把type作为key,然后把layout作为value,在onCreateViewHolder和onBindViewHolder分别处理就可以了.
网友评论