Figura 1: La barra de estado y la barra de navegación, que se denominan en conjunto barras del sistema
Diseña todas las apps de modo que el contenido se extienda desde el borde superior hasta el borde inferior de la pantalla. Este es el comportamiento predeterminado a partir de Android 15 (nivel de API 35). Esto significa que las áreas superior e inferior de tu app se diseñan detrás de la barra de estado y la barra de navegación. En conjunto, la barra de estado y la barra de navegación se denominan barras del sistema. Las barras del sistema son áreas que, por lo general, se usan para mostrar notificaciones, comunicar el estado del dispositivo y navegar en el dispositivo.
Las superposiciones entre tu app y las áreas en las que se muestra la IU del sistema son un ejemplo de inserciones de ventanas, que representan las partes de la pantalla en las que tu app puede cruzarse con la IU del sistema. La intersección con estas partes de la IU puede significar que se muestre sobre el contenido, pero también puede informar a tu app sobre los gestos del sistema.
Están disponibles los siguientes tipos de inserciones de ventana.
De forma predeterminada, habilita la opción para expandir la ventana de tu app y que se extienda por toda la pantalla, y dibuja el contenido de la app de borde a borde detrás de las barras del sistema. Usa desplazamientos para evitar mostrar contenido importante y objetivos táctiles detrás de las barras del sistema.
Las apps que muestran contenido, como películas o imágenes, pueden ocultar las barras del sistema temporalmente para ofrecer una experiencia más envolvente.
Considera cuidadosamente las necesidades y expectativas de tus usuarios antes de modificar las barras del sistema, ya que les brindan una manera estándar de navegar por un dispositivo y ver su estado.
Un corte de pantalla es un área en algunos dispositivos que se extiende a la superficie de la pantalla para proporcionar espacio para sensores en la parte frontal del dispositivo. Las apps pueden admitir cortes de pantalla consultando sus posiciones para que ningún contenido importante se superponga con el área de corte.
Un ejemplo común de una transición de teclado es cuando las inserciones de ventana se actualizan de forma dinámica. Las apps pueden observar el estado actual del teclado, alternar los estados de forma programática, admitir animaciones para las inserciones de ventanas y hacer que el contenido de la app se anime sin problemas entre las transiciones del teclado.
El contenido y las muestras de código que aparecen en esta página están sujetas a las licencias que se describen en la Licencia de Contenido. Java y OpenJDK son marcas registradas de Oracle o sus afiliados.
Última actualización: 2025-08-27 (UTC)
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Falta la información que necesito","missingTheInformationINeed","thumb-down"],["Muy complicado o demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Desactualizado","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema con las muestras o los códigos","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-08-27 (UTC)"],[],[],null,["Try the Compose way \nJetpack Compose is the recommended UI toolkit for Android. Learn how to work with WindowInsets in Compose. \n[WindowInsets in Compose →](/develop/ui/compose/system/insets) \n\n\u003cbr /\u003e\n\n**Figure 1.** The status bar and navigation bar, collectively called the *system bars*.\n\nLayout all apps so that your content stretches from the top edge to the bottom\nedge of the screen. This is the default behavior beginning in Android 15\n(API level 35). This means that the top and bottom areas of your app are laid\nout behind the status bar and the navigation bar. Together, the status bar and\nthe navigation bar are called the *system bars*. The system bars are areas that\nare generally dedicated to the display of notifications, communication of device\nstatus, and device navigation.\n\nThe overlaps between your app and the areas where the system UI is displayed is\none example of *window insets*, which represent the parts of your screen where\nyour app can intersect with the system UI. Intersecting with these parts of the\nUI can mean displaying above the content, but it can also inform your app about\nsystem gestures.\n\nThe following types of window insets are available.\n\n- By default, opt-in to expand your app window to extend across the entire\n screen and draw app content [edge-to-edge](/training/gestures/edge-to-edge)\n behind the system bars. Use offsets to avoid displaying important content\n and touch targets behind system bars.\n\n- Apps that display content such as movies or images can temporarily [hide the\n system bars](/training/system-ui/immersive) for a more immersive experience.\n Carefully consider your users' needs and expectations before modifying the\n system bars, since they give users a standard way of navigating a device and\n viewing its status.\n\n- A *display cutout* is an area on some devices that extends into the display\n surface to provide space for sensors on the front of the device. Apps can\n support [display cutouts](/guide/topics/display-cutout) by querying their\n positions so that no important content overlaps the cutout area.\n\n- A keyboard transition is a common example where window insets are\n dynamically updated. Apps can observe the current keyboard state,\n programmatically toggle the states, support animations for window insets,\n and make app content animate seamlessly between keyboard transitions."]]