Se o app tiver códigos do Compose e da View, talvez seja necessário especificar explicitamente quais encartes do sistema cada um deles precisa consumir e garantir que os encartes sejam enviados para visualizações irmãs.
Como modificar os insetos padrão
Talvez seja necessário substituir os insets padrão quando a tela tiver visualizações e código do Compose na mesma hierarquia. Nesse caso, é necessário especificar qual deles deve consumir os insetos e qual deve ignorá-los.
Por exemplo, se o layout mais externo for um layout de visualização do Android, consuma os insets no sistema de visualização e ignore-os para o Compose.
Como alternativa, se o layout mais externo for um elemento combinável, consuma as
informações em Compose e adicione os elementos combináveis AndroidView
.
Por padrão, cada ComposeView
consome todos os insets no
nível de consumo WindowInsetsCompat
. Para mudar esse comportamento padrão, defina
ComposeView.consumeWindowInsets
como false
.
Envio de insetos compatível com versões anteriores para visualizações
Se o app tiver código de visualizações, talvez seja necessário confirmar se os insets são enviados para visualizações irmãs em dispositivos com Android 10 (nível 29 da API) ou versões anteriores. Consulte o guia de visualização de ponta a ponta para mais informações.
Ícones da barra do sistema
A chamada de enableEdgeToEdge
garante que as cores do ícone da barra do sistema sejam atualizadas quando o tema
do dispositivo mudar.
Ao usar a tela de uma borda à outra, talvez seja necessário atualizar manualmente as cores do ícone da barra do sistema para que elas contrastem com o plano de fundo do app. Por exemplo, para criar ícones de barra de status claros:
Kotlin
WindowCompat.getInsetsController(window, window.decorView) .isAppearanceLightStatusBars = false
Java
WindowCompat.getInsetsController(window, window.getDecorView()) .setAppearanceLightStatusBars(false);