And*_*Dev 12 android android-layout kotlin android-studio android-jetpack-compose
我有一个惰性列表,单击按钮时我将动画滚动到项目。
onClick = {
scope.launch {
lazyListState.animateScrollToItem(selectedIndex)
}
}
Run Code Online (Sandbox Code Playgroud)
为什么 animateScrollToItem 这么快?我可以放慢一点吗?我没有看到任何地方可以添加animationSpec,并且使用 animateScrollBy() 我需要传递一个浮点而不是索引 - 这是我不想要的。
小智 6
这是目前唯一可行的办法。animateScrollBy()顺便说一下,这并不是那么糟糕,您所需要的只是知道惰性容器项目的大小。
val itemSize = 50.dp
val density = LocalDensity.current
val itemSizePx = with(density) { itemSize.toPx() }
val itemsScrollCount = 150
coroutineScope.launch {
lazyListState.animateScrollBy(
value = itemSizePx * itemsScrollCount
animationSpec = tween(durationMillis = 5000)
)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3554 次 |
| 最近记录: |