【发布时间】:2020-09-06 13:13:30
【问题描述】:
在我的 Android 项目中,我有一个复杂的 RecyclerView。我的 RecyclerView 的结构看起来像附加的图像。
简而言之,我有一个包含 CardView 的主 RecyclerView,在 CardView 中我有另一个 RecyclerView,每个元素都可以展开和折叠。
我曾尝试使用嵌套的 RecyclerView 实现(通过键入“Nested RecyclerView”在 Google 中很容易找到),但这种实现存在瓶颈。当我调用 onBindViewHolder 时,它会调用 setAdapter 方法并在我滚动 RecyclerView 时导致错误。
您能否给我一些关于如何实现此类 RecyclerView 的提示?构建此类 Recycler 适配器的最佳方法是什么?
Here is an image how it looks like
Here is what I found about my way of implementing RecyclerView
【问题讨论】:
-
RecyclerViews 应该在您有很多项目并且您不希望所有项目都在内存中时使用(因此 Android 会回收视图)。通过检查您的图像,您似乎每个项目只有三个子项目,因此我不会对子项目使用 RecyclerView。您可以拥有项目的主要 RecyclerView,然后在每个项目上,您可以手动在垂直
LinearLayout中膨胀子项目。 -
嵌套项的数量不固定。它可以是 10-20-50。他们每个人也可以展开-折叠。将分为三个级别:第一个是带有列表的卡片,每个列表的每个项目都可以展开-折叠,展开的项目中将是一个带有 Views 和另一个 RecyclerView 的布局
标签: android kotlin android-recyclerview heterogeneous