首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StaggeredGridLayoutManager动态更改spanCount RecyclerView

StaggeredGridLayoutManager动态更改spanCount RecyclerView
EN

Stack Overflow用户
提问于 2014-12-26 12:11:11
回答 2查看 6.6K关注 0票数 13

如何动态地改变spanCount of RecyclerView?

我的代码在RecyclerView中创建了3列卡片:

代码语言:javascript
复制
 StaggeredGridLayoutManager mFavouratesLayoutManager;
 mFavouratesLayoutManager = new StaggeredGridLayoutManager(3,
                StaggeredGridLayoutManager.VERTICAL);

我试着让适配器像:

  • 顶层行中的一个元素
  • 第二行中的2个元素
  • 以下3项
EN

回答 2

Stack Overflow用户

发布于 2014-12-28 17:58:22

StaggeredGridLayoutManager不支持这一点。您可以更改跨距计数,但它会影响每一行。您唯一的选择是拥有完整的行w/ SGLM。

如果使用GridLayoutManager,,可以通过将span计数设置为6来实现这一点,然后提供返回的SpanSizeLookup

  • 第一项6
  • 3关于项目1和2
  • 2关于项目3 4 5

等。

票数 12
EN

Stack Overflow用户

发布于 2019-01-30 12:36:21

您可以尝试这样做,因为StaggeredGridLayoutManager不支持这一点,所以请使用Gridlayoutmanager。

代码语言:javascript
复制
GridLayoutManager layoutManager = new GridLayoutManager(this, 4);
layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
    if (position == 1)
        return 6;
    else
        return 2;
}
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27656946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档