文章目录
一、RecyclerView 简介
二、RecyclerView 特点
三、RecyclerView 涉及到的类
四、RecyclerView 相关资料
一、RecyclerView 简介
RecyclerView 是 Google 官方提供的任何 基于适配器显示的视图 , 可以实现普通列表 ( ListView ) , 网格列表 ( GridView ) , 瀑布流 , 以及各种自定义形式的多容器布局 ;
RecyclerView 样式与适配器等解耦 : RecyclerView 提供了插拔式体验 , 实现的 Adapter 适配器与显示样式设置 高度解耦 , 在不改变 Adapter 适配器的前提下 :
通过设置不同的 LayoutManager , 就可以实现不同的 布局展示样式 ;
通过设置不同的 ItemDecoration , 可以实现不同的 间隔样式 ;
通过设置不同的 ItemAnimator , 可以实现不同的添加 删除动画 ;
以 " 设置不同的 LayoutManager , 就可以实现不同的布局展示样式 " 为例 , 如 :
设置 LinearLayoutManager 布局管理器 , RecyclerView 展示的就是 横向 / 纵向 的列表 ;
设置 GridLayoutManager 布局管理器 , RecyclerView 展示的就是 网格布局 ;
设置 StaggeredGridLayoutManager 布局管理器 , RecyclerView 展示的就是 瀑布流 样式的布局 ;
二、RecyclerView 特点
RecyclerView 特点 :
① 功能强大 : 实现 表格 , 网格 , 瀑布流 , 自定义容器 等功能 ;
② 垃圾回收机制 : RecyclerView 的 垃圾回收机制很强大 , 远超 ListView ;
③ ViewHolder 规范 : RecyclerView 避免了 ListView 中自定义 ViewHolder , 给出了相应的 规范 ;
三、RecyclerView 涉及到的类
RecyclerView 使用必须有的关键类 : RecyclerView.ViewHolder , RecyclerView.Adapter , LayoutManager ;
RecyclerView.ViewHolder 用于 定义 RecyclerView 中每个独立元素的显示的组件 , 创建时不关联数据 , 创建后会在 RecyclerView.Adapter 适配器 的 onBindViewHolder 方法中为其关联数据 ;
RecyclerView.Adapter 主要作用是 创建 RecyclerView.ViewHolder , 并为其绑定数据 ;
LayoutManager 布局管理器主要作用是 负责排列各个元素组件 , 可以使用系统提供的 线性布局管理器 LinearLayoutManager , 网格布局管理器 GridLayoutManager , 瀑布流布局管理器 StaggeredGridLayoutManager , 也可以 自定义实现各种奇形怪状的布局管理器 , 如自定义圆形的布局管理器 ;
上面的 3 33 个类 , 是使用 RecyclerView 时 , 必须用到的类 , 没有的话 , RecyclerView 便无法显示 ;
此外还有一些可选的设置类 : ItemDecoration , ItemAnimator ;
ItemDecoration 用于设置每个布局元素的 间隔样式 ;
ItemAnimator 用于设置布局元素的 动画效果 , 如添加动画 , 删除动画 等 ;
四、RecyclerView 相关资料
官方文档 :
使用 RecyclerView 创建动态列表 : https://developer.android.google.cn/guide/topics/ui/layout/recyclerview
高级 RecyclerView 自定义 : https://developer.android.google.cn/guide/topics/ui/layout/recyclerview-custom