gpt4 book ai didi

android - 可在两个方向上工作的交错网格布局管理器

转载 作者:行者123 更新时间:2023-12-05 07:21:21 32 4
gpt4 key购买 nike

我正在尝试做的事情:

我正在尝试创建一个交错的网格布局,该布局采用具有不同宽度 高度的项目。布局动态移动项目,使它们不重叠。

我尝试过的:

我研究过使用默认的 StaggeredGridLayoutManager,但它似乎只能在一个方向上工作(即垂直水平)。此外,我遇到的每个库或教程也只处理包含动态高度或动态宽度但不能同时包含两者的项目。

有没有办法让 StaggeredGridLayoutManager 在垂直和水平方向上动态跨越?或者我必须创建自己的自定义布局管理器吗?如果是后者,有人可以指出正确的方向以了解如何创建这样的布局管理器吗?

最佳答案

代替 StaggeredGridLayoutManagerGridLayoutManager 可以与 spanSizeLookup 一起使用。使用 spanSizeLookup,我们可以指定列跨度。

mLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
item[position].columnSpan
}
}

在创建 GridLayoutManager 时,像这样指定最大列数

layoutManager = GridLayoutManager(context, MAX_NUM_COL)

可以通过使用父级的跨度因子和高度计算高度来应用行跨度

关于android - 可在两个方向上工作的交错网格布局管理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56944351/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com