因为官方LazyVerticalGrid为不稳定版,所以我们不能长期依靠它。因此我们自己写一个网格列表,还能避免列表不能嵌套问题。
写法如下:
//要分为几列
val nColumns = 4
//rows 总共几行
val rows = (it.size + nColumns - 1) / nColumns
LazyColumn() {
items(rows) { rowIndex ->
Row {
for (columnIndex in 0 until nColumns) {
//itemIndex List数据位置
val itemIndex = rowIndex * 2 + columnIndex
if (itemIndex < it.size) {
Box(
modifier = Modifier.weight(1f, fill = true),
propagateMinConstraints = true
) {
Tj(data = it[itemIndex])
}
} else {
Spacer(Modifier.weight(1f, fill = true))
}
}
}
}
}
效果:
接下去都会学习Compose,如果觉得有帮助的可以点个赞和关注,不迷路!