Box(
modifier = Modifier.size(100.dp),
contentAlignment = Alignment.Center
) {
val pagerState = rememberPagerState()
val items = listOf("A", "B", "C")
androidx.compose.foundation.pager.HorizontalPager(
state = pagerState,
pageCount = items.size,
modifier = Modifier,
verticalAlignment = Alignment.CenterVertically
) { page ->
Text(
text = items[page],
modifier = Modifier
)
}
}
В приведенном выше коде пейджер останавливает прокрутку после достижения последнего элемента. Однако я хочу, чтобы пейджер продолжал бесконечную прокрутку после достижения последнего элемента.
Вы можете создать его, установив для pageCount значение Int.MAX_VALUE и получив модуль текущей страницы, чтобы получить индекс для вашего списка элементов.
@Preview
@Composable
private fun Test() {
val pageCount = Int.MAX_VALUE
val items = listOf("A", "B", "C")
val pagerState = rememberPagerState(
initialPage = pageCount / 2
)
HorizontalPager(
modifier = Modifier.fillMaxWidth(),
pageCount = pageCount,
state = pagerState
) {
Text(text = items[it % 3])
}
}