StaggeredGridLayoutManager动态更改spanCount RecylerView

时间:2014-12-26 12:11:12

标签: android android-recyclerview

我们如何动态更改RecylerView的spanCount?

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

 StaggeredGridLayoutManager mFavouratesLayoutManager;
 mFavouratesLayoutManager = new StaggeredGridLayoutManager(3,
                StaggeredGridLayoutManager.VERTICAL);

我正在努力使适配器像:

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

2 个答案:

答案 0 :(得分:10)

StaggeredGridLayoutManager 不支持。您可以更改范围计数,但它会影响每一行。您唯一的选择是拥有符合SGLM的完整行。

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

  • 6为第一项
  • 3表示第1项和第2项
  • 2 for item 3 4 5

答案 1 :(得分:0)

您可以尝试一下,因为StaggeredGridLayoutManager不支持该功能,因此请使用Gridlayoutmanager。

enter code here 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;
}
});