如何使用 RecyclerView 和 GridLayoutManager 制作列表列表
How can I make a list of lists with a RecyclerView and GridLayoutManager
我有一个日期列表,每天都有一个事件列表。如何在日项目中显示事件列表?与 google 日历
相同
在您的 day 单元格中,创建另一个包含(垂直项目)的回收器视图。假设每个位置都有不同的数据列表,所以从每个父位置收集数据并设置为每个位置的 childAdapter
示例:
- 假设您有一个使用回收器视图的日历,它通过 ParentViewHolder 保存数据。
- 在您的 ParentViewHolder 中创建另一个类似 ChildRecyclerView 的 Recycler View。
- 使用 ChildViewHolder 为持有垂直项目的 ChildRecyclerView 创建 ChildAdapter。
- 在 ChildViewHolder 上添加必要的操作。
1.The 带 GridLayoutManger 的 RecyclerView 中的日项目视图
2.The RecyclerView 中带有 LinearLayoutManger 的事件项视图
3.Set事件RecyclerView的高度为wrap_content
4.To 为了获得好的性能你应该让所有的 RecyclerView 使用相同的 RecyclerViewPool:
在Activity/Fragment中:
// field
var globalViewPool = RecycledViewPool()
// ....
// init view
dayRecyclerView.setRecycledViewPool(globalViewPool)
在事件适配器中:
// onCreateViewHolder
eventRecyclerView.setRecycledViewPool(globalViewPool)
我有一个日期列表,每天都有一个事件列表。如何在日项目中显示事件列表?与 google 日历
相同在您的 day 单元格中,创建另一个包含(垂直项目)的回收器视图。假设每个位置都有不同的数据列表,所以从每个父位置收集数据并设置为每个位置的 childAdapter
示例:
- 假设您有一个使用回收器视图的日历,它通过 ParentViewHolder 保存数据。
- 在您的 ParentViewHolder 中创建另一个类似 ChildRecyclerView 的 Recycler View。
- 使用 ChildViewHolder 为持有垂直项目的 ChildRecyclerView 创建 ChildAdapter。
- 在 ChildViewHolder 上添加必要的操作。
1.The 带 GridLayoutManger 的 RecyclerView 中的日项目视图
2.The RecyclerView 中带有 LinearLayoutManger 的事件项视图
3.Set事件RecyclerView的高度为wrap_content
4.To 为了获得好的性能你应该让所有的 RecyclerView 使用相同的 RecyclerViewPool:
在Activity/Fragment中:
// field
var globalViewPool = RecycledViewPool()
// ....
// init view
dayRecyclerView.setRecycledViewPool(globalViewPool)
在事件适配器中:
// onCreateViewHolder
eventRecyclerView.setRecycledViewPool(globalViewPool)