如何在 Jetpack Compose 中创建 Viewpager 转换?

问题描述 投票:0回答:1

我想创建一个水平滚动并在滚动时始终查看中心屏幕。 我发现它是用 viewpager2 创建的,但是当使用 Jetpack Composer 时,我不知道如何创建它。我也尝试在 YouTube 上观看并在其他几个地方搜索,但没有找到任何解决方案。有人可以帮助我或建议如何制作这样的视图吗?非常感谢。

看起来像

1

android android-jetpack-compose android-viewpager2
1个回答
0
投票

您可以使用

HorizontalPager
并指定
pageSize
snapPosition
,如下所示:

@Composable
fun PagerExample() {

    val configuration = LocalConfiguration.current
    val screenWidth = configuration.screenWidthDp.dp

    Column {

        val state = rememberPagerState { 10 }
        HorizontalPager(
            state = state,
            modifier = Modifier.fillMaxSize(),
            pageSize = PageSize.Fixed(screenWidth - 50.dp),
            snapPosition = SnapPosition.Center,
            contentPadding = PaddingValues(25.dp)
        ) { page ->
            Box(
                modifier = Modifier
                    .background(if (page % 2 == 0) Color.Cyan else Color.LightGray)
                    .fillMaxSize(),
                contentAlignment = Alignment.Center
            ) {
                Text(text = page.toString(), fontSize = 32.sp)
            }
        }
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.