Код: Выделить всё
Scaffold(
snackbarHost = {
SnackbarHost(hostState = snackbarHostState)
},
modifier = Modifier.fillMaxSize()
) { innerPadding ->
NavHost(...)
}
< /code>
Но тогда у меня есть один экран в тех направлениях Navhost, где я хочу разместить нижний апбар. Поэтому я хотел бы иметь возможность определить нижний апбар не как параметр каркаса, который должен быть за пределами морского флоста, но как часть композиционного, соответствующего этому пункту назначения. Что -то подобное (обратите внимание, что детали Navhost были удалены ради простоты): < /p>
Scaffold(
modifier = Modifier.fillMaxSize()
)
{
NavHost(...) {
Column(
modifier = Modifier
.fillMaxSize()
.padding(innerPadding)
.consumeWindowInsets(innerPadding)
.windowInsetsPadding(
WindowInsets.safeDrawing.only(
WindowInsetsSides.Horizontal,
),
)
) {
BottomBar(
onClickBottomNavItem = onChangeSection,
currentSection = plantSheetUiState.currentSection,
hasConfusions = plantSheetUiState.plantHasConfusions
)
}
}
}
< /code>
Но, к сожалению, это ничего не отображает: (< /p>
Мне удалось сделать это в каркасе в другом каркасе: < /p>
Scaffold(
modifier = Modifier.fillMaxSize()
)
{
NavHost(...) {
Scaffold(
bottomBar = BottomBar(
onClickBottomNavItem = onChangeSection,
currentSection = plantSheetUiState.currentSection,
hasConfusions = plantSheetUiState.plantHasConfusions
),
modifier = Modifier
.fillMaxSize()
.padding(innerPadding)
.consumeWindowInsets(innerPadding)
.windowInsetsPadding(
WindowInsets.safeDrawing.only(
WindowInsetsSides.Horizontal,
),
)
) {
Body(
modifier = modifier.padding(it)
)
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... composable