Как отключить пролистывание экрана ModalBottomSheetLayout в Jetpack ComposeAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как отключить пролистывание экрана ModalBottomSheetLayout в Jetpack Compose

Сообщение Anonymous »

Я работаю с ModalBottomSheet в Jetpack Compose, и мне нужно отключить функцию пролистывания. Хотя я нашел обходной путь, который частично решает мою проблему, он создал новую проблему. В частности, LazyColumn внутри ModalBottomSheet больше не прокручивается.
Вот расширение модификатора, которое я нашел в системе отслеживания ошибок Google, которое помогло отключить вертикальную прокрутку:

Код: Выделить всё

fun Modifier.verticalScrollDisabled() =
pointerInput(Unit) {
awaitPointerEventScope {
while (true) {
awaitPointerEvent(pass = PointerEventPass.Initial).changes.forEach {
val offset = it.positionChange()
if (abs(offset.y) > 0f) {
it.consume()
}
}
}
}
}
Это отключает смахивание вниз для отклонения поведения ModalBottomSheet, но за счет отключения и вертикальной прокрутки в моем LazyColumn. Кроме того, я не думаю, что это лучшая практика :)

Подробнее здесь: https://stackoverflow.com/questions/768 ... ck-compose
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»