gpt4 book ai didi

android - 如何在 Jetpack Compose 中创建垂直无限轮播?

转载 作者:行者123 更新时间:2023-12-05 00:14:44 34 4
gpt4 key购买 nike

我正在尝试构建一个可滚动的列(最好是 LazyColumn),它会在我滚动到末尾后再次开始重新显示第一个项目。例如,请看这个从 00..59 开始循环然后又从 0 开始平稳滚动的闹钟。

我已经尝试了一个普通的 LazyColumn,它将显示 58,59,00..59,00,01 并在我完成滚动(达到 59)后快速开始,但它看起来“便宜”。

最佳答案

@Composable
fun CircularList(
items: List<String>,
modifier: Modifier = Modifier,
isEndless: Boolean = false,
onItemClick: (String) -> Unit
) {
val listState = rememberLazyListState(
if (isEndless) Int.MAX_VALUE / 2 else 0
)

LazyColumn(
state = listState,
modifier = modifier
) {
items(
count = if (isEndless) Int.MAX_VALUE else items.size,
itemContent = {
val index = it % items.size
Text(text = items[index]) // item composable
}
)
}
}

关于android - 如何在 Jetpack Compose 中创建垂直无限轮播?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69937460/

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