例如,我有一个惰性列;
Box(
modifier = Modifier.fillMaxSize(),
contentAlignment = Alignment.Center
) {
LazyColumn(Modifier.height(100.dp).border(2.dp, Color.Red)) {
items(20){
Text(text = "Swipe")
}
}
}
查看;
我只想向下滑动而不是向上滑动。我怎样才能实现这个目标?
最佳答案
您可以创建一个 NestedScrollConnection
并在其中使用向上滚动。像这样的事情:
val nestedScrollConnection = remember {
object : NestedScrollConnection {
override fun onPreScroll(available: Offset, source: NestedScrollSource): Offset {
val delta = available.y
return if (delta < 0) {
Offset.Zero
} else {
Offset(available.x, available.y)
}
}
}
}
然后将其分配给您的 LazyColumn
修饰符
:
LazyColumn(Modifier.height(100.dp).border(2.dp, Color.Red).nestedScroll(nestedScrollConnection)) {
items(20){
Text(text = "Swipe")
}
}
如果您想阻止向另一个方向滚动,请翻转 onPreScroll
方法中的 if 条件。
关于android - 如何防止 Jetpack Compose 中的惰性列/行向一个方向滑动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73660409/