Is it possible to have Scaffold inside other Scaff...
# compose
n
Is it possible to have Scaffold inside other Scaffold? I have weird issues with paddings in this case and was curious maybe it wasn’t designed to be nested.
z
Did you propagate the contentPadding?
n
I’m using Voyager TabNavigator со I can’t propagate contentPadding from external Scaffold into inner Scaffold. My situation: external Scaffold contains NavigationBar internal Scaffold contains TopAppBar When I use paddingValues as in my example below, my internal Scaffold has extra padding on top of it and content inside of it has the same top padding (which roughly equals to the TopAppBar size), like if the external Scaffold somehow detected presence of TopAppBar inside of the internal Scaffold. I hope it makes sense. External:
Copy code
TabNavigator(homeTab) {
    Scaffold(
        content = { paddingValues ->
            Box(
                modifier = Modifier
                    .padding(paddingValues)
                    .consumeWindowInsets(paddingValues),
            ) {
                CurrentTab()
            }
        },
        bottomBar = { // NavigationBar }
    )
}
Internal:
Copy code
Scaffold(
        topBar = {
            //TopAppBar
        },
        content = { paddingValues ->
            Column(
                modifier = Modifier
                    .fillMaxHeight()
                    .padding(paddingValues),
            ) {
               // Content
            }
        },
    )
Solution that currently works for me -
consumeWindowInsets
for external
paddingValues
z
By “propagate” I just meant apply the outer scaffolds padding to its content