Android 笔记之RecyclerView

来源:互联网 发布:ed视频剪辑软件下载 编辑:程序博客网 时间:2024/05/22 11:48

5.0之后推出的新控件,需要额外添加依赖。类似listview,和listview不同的是,该创建方式属于插件继承模式,它不关心item中的内容,不关心item之间的间距,不关心item添加和删除的动画。
但是对应设置了三个接口,分别是layoutmanager,decoration, animator,可以把他们看成三个插件,通过这三个插件来完成recycleview所不擅长的三个模块。通过使用这种插件模式,使得recycleview的自由度和维护性都大大的提高了。当开发者需要对功能进行更改时,只需要更改其对应模块的插件即可。
使用方法:因为是5.0之后引入的新功能,需要导入recycleview V7拓展包。之后至少设置一种layoutmanager(Linearlayoutmanager、gridlayoutmanager、StaggeredGridLayoutManager),layoutmanager直接通过构造方法获得,可以设置水平、垂直显示。
然后和ListView一样需要设置Adapter,方法和之前差不多,其中有几点需要注意:
RecyclerView会强制开发者实现ViewHolder类,如果说ListView是可选回收Item的、那RecyclerView就是默认必选回收,从这里也可以看出来Google越来越重视程序性能的优化。
继承ViewHolder类,父类构造方法中需要传入一个ItemView,这里就不多说了,重点是这里解析View时由于RecyclerView的机制,必须要重载三个参数的View inflate(@LayoutRes int resource, @Nullable ViewGroup root, boolean attachToRoot) 方法。其中前两个参数比较容易理解,至于第三个可以直接传false,具体含义没有细究。

1 0
原创粉丝点击