目前,我使用RecyclerView显示一组具有不同视图类型的视图,其中一组连续项属于一起:标题,一组可变内容项和分隔符/页脚。 现在我也希望我的UI在更大的设备上看起来很好,也就是使用多个窗格,所以我切换到StaggeredGridLayoutManager。这里的问题是它在所有跨度之间均匀地分布视图,意味着一个组分布在多个列上。 因此,我想指定布局管理器将一组连续的视图放入同一个范围,然后将下一个组放入下一个组。 这是否可以使用我使用的LayoutManager?我可以修改它以便像那样工作而不只是复制和编辑它吗?支持lib开发者:有没有计划引入这种行为?
请告诉我是否应该提供任何其他信息,以及什么时候不够清楚。
答案 0 :(得分:1)
您可以使用支持库StaggeredGridLayoutManager
来实现所需的布局;您需要将每个“组”项(例如header1 + 1-3 +页脚)设置为适配器返回的单个视图。此视图本身可以是RecyclerView
。
那就是你有一个外RecyclerView
个StaggeredGridLayoutManager
和多个内RecyclerView
个LinearLayoutManager
s。您可以在内部RV之间共享一个RecycledViewPool
。您必须做一些体操来为内部RV创建适当的适配器,但这可能比编写自己的LayoutManager
更简单!