2

I am going to implement a screen with jetpack compose containing a ScaffoldBottomSheet and a LazyColumn inside the bottom sheet's content. I also want the bottom sheet's height to be fixed and users can't collapse it. In order to do that I disable the sheet gestures and give the height of 600.dp for the content of the bottom sheet. But when I scroll items of the lazy column the bottom sheet scrolls down and finally collapses.

Here are my codes:

@ExperimentalMaterialApi
@Composable
fun TestScreen(
    testViewModel: TestViewModel = hiltViewModel()
) {
    val bottomSheetScaffoldState = rememberBottomSheetScaffoldState(
        bottomSheetState = rememberBottomSheetState(
            BottomSheetValue.Expanded
        )
    )

    BottomSheetScaffold(
        scaffoldState = bottomSheetScaffoldState,
        sheetContent = {
            Box(modifier = Modifier.fillMaxWidth().height(600.dp)) {
                LazyColumn() {
                    items(20) {
                        Text(text = "this is for test", modifier = Modifier
                            .padding(start = 20.dp, top = 20.dp)
                            .fillMaxWidth()
                            .height(50.dp))
                    }
                }
            }
        },
        sheetPeekHeight = 0.dp,
        sheetShape = RoundedCornerShape(topEnd = 52.dp, topStart = 52.dp),
        backgroundColor = AppColor.ThemeColor.BACKGROUND,
        sheetGesturesEnabled = false
    ) {

    }
}

mehdi dorreh
  • 173
  • 1
  • 12

0 Answers0