Recycleview是ListView的更高度定制版,也可以说是升级版,当你需要高效的展示大量数据时候,动态改变元素的列表的时候,就用这个。
如果只是动态展示数据,listview也可以做到,用RecyclerView替代listview的原因有几个:
优点:
1.简介中提到的它封装了viewholder的回收复用。
2.RecyclerView使用布局管理器管理子view的位置,也就是说你再不用拘泥于ListView的线性展示方式,如果之后提供其他custom LayoutManager的支持,你能够使用复杂的布局来展示一个动态组件。
3.自带了ItemAnimation,可以设置加载和移除时的动画,方便做出各种动态浏览的效果。
4.分开的view
缺点:
目前相对于我们对listview经常用到的方法,有下面两个问题:
1. 不能简单的加头和尾:
不能简单的添加Head和Footer ,因为没有直接的addHead和addFoot的方法了
2. 不能简单的设置子item的点击事件:
RecycleView,会发现没有这个接口了,解决办法如下:
让你的viewholder实现onClickListener,然后在这个方法里面回调我们自己写的接口。
接着在你的Adapter里面加多个set方法,里面设置回调接口
网友评论