Si tu app contiene código de Compose y de View, es posible que debas especificar qué inserciones del sistema debe consumir cada uno y asegurarte de que las inserciones se envíen a las vistas secundarias.
Cómo anular las inserciones predeterminadas
Es posible que debas anular las inserciones predeterminadas cuando tu pantalla tenga código de Views y Compose en la misma jerarquía. En este caso, debes indicar explícitamente cuál debe consumir las inserciones y cuál debe ignorarlas.
Por ejemplo, si tu diseño más externo es un diseño de View de Android, debes consumir las inserciones en el sistema de View y omitirlas para Compose.
Como alternativa, si tu diseño más externo es un elemento componible, debes consumir las inserciones en Compose y agregar relleno a los elementos componibles AndroidView
según corresponda.
De forma predeterminada, cada ComposeView
consume todas las inserciones en el nivel de consumo WindowInsetsCompat
. Para cambiar este comportamiento predeterminado, establece AbstractComposeView.consumeWindowInsets
en false
.
Envío de inserciones retrocompatible para vistas
Si tu app contiene código de Views, es posible que debas confirmar que las inserciones se envían a las vistas secundarias en dispositivos que ejecutan Android 10 (nivel de API 29) o versiones anteriores. Consulta la guía de Views borde a borde para obtener más información.
Íconos de la barra del sistema
Llamar a enableEdgeToEdge
garantiza que los colores de los íconos de la barra del sistema se actualicen cuando cambia el tema del dispositivo.
Cuando vayas de borde a borde, es posible que debas actualizar manualmente los colores de los íconos de la barra del sistema para que contrasten con el fondo de tu app. Por ejemplo, para crear íconos de barra de estado claros, haz lo siguiente:
Kotlin
WindowCompat.getInsetsController(window, window.decorView) .isAppearanceLightStatusBars = false
Java
WindowCompat.getInsetsController(window, window.getDecorView()) .setAppearanceLightStatusBars(false);