gpt4 book ai didi

android - 如何使用带有 LazyVerticalGrid 的 jetpack 组合分页

转载 作者:行者123 更新时间:2023-12-04 12:15:20 29 4
gpt4 key购买 nike

我正在尝试使用 LazyVerticalGrid 显示分页项目。我正在尝试的代码如下所示。

 val categories = repo.categories.collectAsLazyPagingItems()

LazyVerticalGrid(
cells = GridCells.Fixed(2),
modifier = Modifier.padding(8.dp)
) {

items(categories) { category ->
Box(Modifier.padding(8.dp)) {
CategoryView(category)
}
}

}
请注意,我已导入 androidx.paging.compose.itemsandroidx.paging.compose.collectAsLazyPagingItems .还有 categoriesLazyPagingItems<Category> 类型.
它与 LazyColumn 完美配合和 LazyRow但不是 LazyVerticalGrid .
我得到的错误是:
Type mismatch.
Required:
Int
Found:
LazyPagingItems<Category>

最佳答案

我通过为 LazyGridScope 编写扩展函数想出了一个解决方案就像为 LazyListScope 写的那篇文章一样在 androidx.paging:paging-compose图书馆。

@ExperimentalFoundationApi
public fun <T: Any> LazyGridScope.items(
lazyPagingItems: LazyPagingItems<T>,
itemContent: @Composable LazyItemScope.(value: T?) -> Unit
) {
items(lazyPagingItems.itemCount) { index ->
itemContent(lazyPagingItems[index])
}
}

关于android - 如何使用带有 LazyVerticalGrid 的 jetpack 组合分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68445699/

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