相关疑难解决方法(0)

Jetpack Compose 中一个 ModalBottomSheetLayout 的多个 BottomSheets

我想实现一个可以显示两个不同底部工作表的屏幕。由于ModalBottomSheetLayout只有一个片槽我决定改变sheetContentModalBottomSheetLayout动态使用selected状态时我要显示或者在两个片材(的全码)。

val sheetState = rememberModalBottomSheetState(initialValue = ModalBottomSheetValue.Hidden)

val (selected, setSelected) = remember(calculation = { mutableStateOf(0) })

ModalBottomSheetLayout(sheetState = sheetState, sheetContent = {
    when (selected) {
       0 -> Layout1()
       1 -> Layout2()
    }
}) {
   Content(sheetState = sheetState, setSelected = setSelected)
}
Run Code Online (Sandbox Code Playgroud)

这适用于非常相似的工作表,但是一旦您向两个工作表布局中的任何一个添加更多复杂性,第一次按下按钮时工作表将不会显示,它只会在您按下按钮两次后显示可以在这里看到:

2

在这里你可以找到一个可重现的例子

android android-jetpack-compose

6
推荐指数
2
解决办法
1818
查看次数

标签 统计

android ×1

android-jetpack-compose ×1