Usar engastes do Material 3

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

Elementos combináveis de processamento de encartes

Confira a seguir uma lista dos Componentes do Material Design que processam encartes automaticamente.

Barras de apps

Contêineres de conteúdo

Scaffold

Por padrão, o Scaffold fornece encartes como parâmetro PaddingValues para você consumir e usar. Scaffold não aplica os encartes ao conteúdo. Essa responsabilidade é sua. Por exemplo, para consumir esses encartes 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 exibição de ponta a ponta desativada e ativada:

Usar o parâmetro PaddingValues em Scaffold geralmente é suficiente para inserir sua interface longe da interface do sistema e dos cortes de tela. Evite usar outras abordagens de processamento de encartes, como réguas, modificadores de padding ou modificadores de tamanho de encarte, se estiver usando Scaffold para evitar aplicar muito padding à sua interface.

Substituir encartes 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 encarte de janela para aplicar ou ser desativado transmitindo uma instância vazia: WindowInsets(0, 0, 0, 0).

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

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