Код: Выделить всё
@Composable
@OptIn(ExperimentalMaterial3Api::class)
fun BottomSheet(
modifier: Modifier = Modifier,
isBottomSheetVisible: Boolean,
sheetState: SheetState,
shape: Shape = RoundedCornerShape(topStart = 12.dp, topEnd = 12.dp),
onDismiss: () -> Unit,
content: @Composable ColumnScope.() -> Unit
) {
if (isBottomSheetVisible) {
ModalBottomSheet(
modifier = modifier,
onDismissRequest = onDismiss,
sheetState = sheetState,
tonalElevation = 0.dp,
shape = shape,
dragHandle = null,
windowInsets = WindowInsets(0, 0, 0, 0)
) {
Column(
modifier = Modifier
.fillMaxWidth()
.padding(start = 16.dp, end = 16.dp, bottom = 30.dp)
.navigationBarsPadding()
.animateContentSize()
) {
Spacer(modifier = Modifier.height(10.dp))
Box(
modifier = Modifier
.size(height = 4.dp, width = 32.dp)
.clip(RoundedCornerShape(100.dp))
.background(almaColorPalette.neutral4)
.align(alignment = Alignment.CenterHorizontally)
)
Spacer(modifier = Modifier.height(15.dp))
content()
}
}
}
}
Код: Выделить всё
val sheetState = rememberModalBottomSheetState()
Подробнее здесь: https://stackoverflow.com/questions/790 ... -partially