Usar engastes do Material 3

Para facilitar o uso, muitos dos combináveis integrados do Material 3 (androidx.compose.material3) processam os insetos por conta própria, com base na forma como os combináveis são colocados no app de acordo com as especificações do Material.

Elementos combináveis que processam o recuo

Confira a seguir uma lista dos componentes do Material Design que processam automaticamente os insets.

Barras de apps

Contêineres de conteúdo

Scaffold

Por padrão, Scaffold fornece insets como parâmetro paddingValues para você consumir e usar. O Scaffold não aplica os insetos ao conteúdo. Essa responsabilidade é sua. Por exemplo, para consumir esses insetos com um LazyColumn dentro de um Scaffold:

Scaffold { innerPadding ->
    // innerPadding contains inset information for you to use and apply
    LazyColumn(
        // consume insets as scaffold doesn't do it by default
        modifier = Modifier.consumeWindowInsets(innerPadding),
        contentPadding = innerPadding
    ) {
        // ..
    }
}

O vídeo a seguir mostra um LazyColumn em um Scaffold com a tela de ponta a ponta desativada e ativada:

Substituir insetos padrão

Você pode mudar o parâmetro windowInsets transmitido ao elemento combinável para configurar o comportamento dele. Esse parâmetro pode ser um tipo diferente de janela inserida para aplicar ou desativado transmitindo uma instância vazia: WindowInsets(0, 0, 0, 0).

Por exemplo, para desativar o processamento de insetos em LargeTopAppBar, defina o parâmetro windowInsets como uma instância vazia:

LargeTopAppBar(
    windowInsets = WindowInsets(0, 0, 0, 0),
    title = {
        Text("Hi")
    }
)