Android中的MVVM架构设计-实用篇(五)实现Recycl
2018-08-07 本文已影响302人
黑键手记

引言
上一篇中我们使用mvvm模式进行了listview的展示,当然我的方式只是众多方式中的比较简单的一种,大家如果有其他写法方式,希望不吝赐教,在下在此谢过。
今天给大家讲解一下RecyclerView在mvvm中的使用。
需要注意的是:
其实RecyclerView和ListView的区别在于:
RecyclerView本身就为多个条目进行了view的复用
并且在给RecyclerView设置适配器的时候
RecyclerView会强制性的让我们的适配器实现ViewHolder的内部类
那么我们的处理方法就是:
让viewholder与databinding建立一定的关系即可
ok,大家要以这个注意点为前提,然后结合我的第四篇文章去了解下RecyclerView的用法,那么就应该很好理解了。
开工了!
开工之前,我们先看一下效果图吧,还是很丑的样子...

第一步、创建基础布局,并找到recyclerview


第二步、通ListView方式一致,去创建ViewModel,今天我们以商品为例

第三步、创建item布局,这一步也和ListView的写法同出一辙

第四步、也是最关键的一步,创建适配器
还是废话不多说,直接贴图了

关键的注释都在图里面,请大家熟读
第五步、直接创建假数据,并且绑定适配器,完工!


总结
Recylerview的写法和Listview有着很多联系,大家在联系这两种方式时候最好是多思考一下他们之间的差异,这样才能记忆深刻。
好了,今天的内容就这些啦,明天我们会继续学习viewpager的mvvm写法,敬请期待!
感谢大家的关注,么么哒~~~