Posicionar o app dentro de encartes de janela

Teste o jeito do Compose
O Jetpack Compose é o kit de ferramentas de UI recomendado para Android. Aprenda a trabalhar com WindowInsets no Compose.

Figura 1. A barra de status e a barra de navegação, chamadas coletivamente de barras de sistema.

Disponha todos os apps para que o conteúdo se estenda da borda superior até a borda inferior da tela. Esse é o comportamento padrão a partir do Android 15 (nível 35 da API). Isso significa que as áreas superior e inferior do app são dispostas atrás da barra de status e da barra de navegação. Juntas, a barra de status e a barra de navegação são chamadas de barras de sistema. As barras de sistema são áreas geralmente dedicadas à exibição de notificações, comunicação do status do dispositivo e navegação do dispositivo.

As sobreposições entre o app e as áreas em que a interface do sistema é mostrada são um exemplo de encartes de janela, que representam as partes da tela em que o app pode cruzar com a interface do sistema. A interseção com essas partes da interface pode significar mostrar acima do conteúdo, mas também pode informar seu app sobre gestos do sistema.

Os seguintes tipos de encartes de janela estão disponíveis.

  • Por padrão, ative a opção para expandir a janela do app por toda a tela e renderizar o conteúdo do app de ponta a ponta atrás das barras de sistema. Use offsets para evitar mostrar conteúdo importante e destinos de toque atrás das barras de sistema.

  • Os apps que mostram conteúdo, como filmes ou imagens, podem ocultar temporariamente as barras de sistema para uma experiência mais imersiva. Considere cuidadosamente as necessidades e expectativas dos usuários antes de modificar as barras de sistema, já que elas oferecem a eles uma maneira padrão de navegar em um dispositivo e visualizar o status dele.

  • Um corte da tela é uma área em alguns dispositivos que se estende até a superfície da tela para deixar espaço para sensores na parte frontal do dispositivo. Os apps podem oferecer suporte a cortes da tela consultando as posições para que nenhum conteúdo importante se sobreponha à área de corte.

  • Uma transição de teclado é um exemplo comum em que os encartes de janela são atualizados dinamicamente. Os apps podem observar o estado atual do teclado, alternar os estados de maneira programática, oferecer suporte a animações para encartes de janela e fazer com que o conteúdo do app seja animado de maneira integrada entre as transições do teclado.