android - 交错网格布局管理器。如何在第一行有一个项目,其他行有 2 个项目

标签 android android-layout android-recyclerview

我将 recyclerview 与 staggeredGridLayoutManager 一起使用。 我想要做的是在第一行显示一个标题项。然后我想在下面的每一行中显示 2 个项目。但是我做不到。

这是我使用的代码。

    recyclerView = (RecyclerView)findViewById(R.id.recycler);
    staggeredGridLayoutManager = new StaggeredGridLayoutManager(1,1);
    recyclerView.setLayoutManager(staggeredGridLayoutManager);

这是结果

enter image description here

enter image description here

帮我解决这个问题。谢谢

最佳答案

您可以使用 GridLayoutManager。

GridLayoutManager manager = new GridLayoutManager(this, 2, GridLayoutManager.VERTICAL, false);

manager.setSpanSizeLookup(
    new GridLayoutManager.SpanSizeLookup() {
        @Override
        public int getSpanSize(int position) {
             // 2 column size for first row
             return (position == 0 ? 2 : 1);
        }
    });

这里我们创建了一个有 2 个网格列的 GridLayoutManager。然后仅针对第一行,我们将跨度大小设置为 2。

关于android - 交错网格布局管理器。如何在第一行有一个项目,其他行有 2 个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37042451/

相关文章:

android - google map api V3 未在 android 模拟器上显示

android - 如何让 SwitchCompat 在选中时不改变颜色?

android - 定位一张 "list"的图片

android - 如何在android中制作自定义textview?

android - recyclerview 中的 Seekbar 也会移动 recyclerview

java - 就内存和时间而言,分配给字符串变量是否成本高昂?

java - 我如何通过用户输入更改文本按钮

android - 如何从 App Center Push SDK 的用户 ID 中删除用户 ID 和/或设备 ID/信息

android - 在 Android 中使用 WebView 完美滚动

java - 从 recyclerView (java) 的选定行中获取值