gpt4 book ai didi

android - 有没有办法在 android Jetpack Compose 中自定义 LazyRow 拖动或滚动行为?

转载 作者:行者123 更新时间:2023-12-04 11:39:52 34 4
gpt4 key购买 nike

下图解释了我想要实现的规范
enter image description here
如果用户将上一个(或下一个)项目拖动到某个 X_SCROLL_THRESHOLD,我想制作 Lazy Row 滚动项目.
我考虑尝试Pager在 Jetpack 中编写示例应用程序 Jet Caster ,但我想显示很多项目(1788 项)所以,我不确定 Pager方法比使用 LazyRow 更合适.
有没有办法在 android Jetpack Compose 中自定义 LazyRow 拖动或滚动行为?

最佳答案

您可以尝试 Pager Layouts。它目前是一个实验性 API。希望 Google 开发人员尽快使其成为通用撰写库的一部分。
使用 rememberPagerState 管理 initialOffscreenLimit(当前页面两侧保留的页面数)。
https://google.github.io/accompanist/pager/
Google Github 示例链接 - https://github.com/google/accompanist/tree/main/sample/src/main/java/com/google/accompanist/sample/pager
您需要在您的应用程序 gradle 中包含此依赖项

//Pager
implementation "com.google.accompanist:accompanist-pager:0.18.0"
一个简单的例子
// Display 10 items
val pagerState = rememberPagerState(
pageCount = 10,
initialOffscreenLimit = 2
)

HorizontalPager(state = pagerState) { page ->
// Our page content
Column(
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.Center,
modifier = Modifier.fillMaxSize()
) {
Text(
text = "Item: $page",
textAlign = TextAlign.Center,
modifier = Modifier.fillMaxWidth()
)
Text(
text = "Something Else",
textAlign = TextAlign.Center,
modifier = Modifier.fillMaxWidth()
)
//Your other composable
}
}

布局检查器在当前页面的两侧展示了 2 个项目的 offscreenLimit
Layout Inspector

关于android - 有没有办法在 android Jetpack Compose 中自定义 LazyRow 拖动或滚动行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66742197/

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