RecyclerViewgeng效果比listview更酷炫
效果有有列表,表格,瀑布流三种效果,就是管理者不同,所以参数略有不同,
功能的高度解耦化,规范 ViewHolder 的写法,以及对动画友好支持,都是它与传统控件 ListView 的区别。而无论 ListView 还是 RecyclerView,本质上都是在有限的屏幕之上,展示大量的内容。所以复用的逻辑,就成了它们最最重要的核心原理,本文主要目的就是探究 RecyclerView 的复用原理。
适配器的不同:
1.继承RecyclerView.Adapter 2.写viewholder 3.定义范型<类名.ViewHolder> 4.创建构造函数得到外界上下文和数据 5.onCreateViewHolder创建布局的对象 6.viewholder查找控件对象 7.onBindViewHolder绑定数据
重写的方法:
- onBindViewHolder 相当于getview,当viewhonlder和数据绑定时回调
- getItemCount数据条目数,有几条显示几条
- ViewHolder 需要继承RecyclerView.ViewHolder,类似ListView中的viewholder,优化
高度解耦,就是通过以上对象各司其职,来实现
RecyclerView 的基本功能
RecyclerView 的几大模块:
-
LayoutManager
负责 RecyclerView 中,控制 item 的布局方向 -
RecyclerView.Adapter
为 RecyclerView 承载数据 -
ItemDecoration
为 RecyclerView 添加分割线 -
ItemAnimator
控制 RecyclerView 中 item 的动画
三种管理者:
GridLayoutManager继承LinearLayoutManager,其他两个继承的LayoutManager
LinearLayoutManager(线性布局效果)、GridLayoutManager(网格布局效果)、
StaggeredGridLayoutManager(瀑布流布局效果)