android - 回收 View /交错网格布局管理器 : Force group of consecutive views into the same span/column

标签 android android-recyclerview android-support-library staggeredgridlayout

目前,我正在使用 RecyclerView 来显示一组具有不同 View 类型的 View ,其中一组连续的项目属于一起:一个标题、一组可变的内容项目和一个分隔符/页脚。 Current situation 现在我还希望我的 UI 在更大的设备上看起来不错,也就是使用多个 Pane ,所以我切换到 StaggeredGridLayoutManager。这里的问题是它在所有跨度之间平均分布 View ,这意味着一个组分布在多个列上。 Situation with staggered LayoutManager 因此,我想指定布局管理器将一组连续的 View 放入同一跨度中,然后才将下一组放入下一个 View 中。 What I want 我使用的 LayoutManager 是否有可能以某种方式实现这一点?我可以修改它使其像那样工作而不只是复制和编辑它吗?支持 lib 开发者:是否有引入此类行为的计划?

请告诉我是否应该提供任何其他信息,以及什么时候不够清楚。

最佳答案

您可以使用支持库的 StaggeredGridLayoutManager 实现您想要的布局;您需要使每个“组”项目(例如 header1 + 1-3 + footer)成为适配器返回的单个 View 。这个 View 本身可以是一个 RecyclerView

也就是说,您将拥有一个带有 StaggeredGridLayoutManager 的外部 RecyclerView 和带有 LinearLayoutManager 的多个内部 RecyclerView秒。您可能会在内部 RV 之间共享一个 RecycledViewPool。您将不得不做一些体操来为内部 RV 创建合适的适配器,但这可能比编写您自己的 LayoutManager 更简单!!

关于android - 回收 View /交错网格布局管理器 : Force group of consecutive views into the same span/column,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43194762/

相关文章:

java - FitsSystemWindows 不工作

Android 2.0 : Support Actionbar library (appcompat v7 support library without resources):No resource found @style/Theme. AppCompat.Light.DarkActionBar

android - Recycler View 在滚动时随机播放图像

android - 带有 RecyclerView 的自定义对话框在屏幕上膨胀得非常小

java - 在 RecyclerView 滚动监听器中实现单击监听器

android - 为什么对于某些 recyclerview 项目,textview ellipsize 检查在 recyclerview 滚动期间返回 true,即使它是 false?

android - NavUtils.getParentActivityIntent() 抛出 "Activity does not have a parent activity name specified."

android - OnTouch 在动态壁纸中不工作

android - 如何将文件权限设置为 MODE_WORLD_READABLE

Android通知栏构建方法错误