Lenguaje

View.FitSystemWindows(Rect) Método

Definición

Precaución

deprecated

Lo llama la jerarquía de vistas cuando han cambiado los conjuntos de contenido de una ventana para permitir que ajuste su contenido dentro de esas ventanas.

[Android.Runtime.Register("fitSystemWindows", "(Landroid/graphics/Rect;)Z", "GetFitSystemWindows_Landroid_graphics_Rect_Handler")]
[System.Obsolete("deprecated")]
protected virtual bool FitSystemWindows(Android.Graphics.Rect? insets);
[<Android.Runtime.Register("fitSystemWindows", "(Landroid/graphics/Rect;)Z", "GetFitSystemWindows_Landroid_graphics_Rect_Handler")>]
[<System.Obsolete("deprecated")>]
abstract member FitSystemWindows : Android.Graphics.Rect -> bool
override this.FitSystemWindows : Android.Graphics.Rect -> bool

Parámetros

insets
Rect

Conjuntos de contenido actual de la ventana. android.os.Build.VERSION_CODES#JELLY_BEAN Antes de que no deba modificar los conjuntos o, de lo contrario, usted y Android serán infelices.

Devoluciones

true si esta vista aplicó los conjuntos y no debe continuar propagando más hacia abajo la jerarquía; de lo contrario, false .

Atributos

Comentarios

Lo llama la jerarquía de vistas cuando han cambiado los conjuntos de contenido de una ventana para permitir que ajuste su contenido dentro de esas ventanas. Los conjuntos de contenido indican el espacio que infringen la barra de estado, el método de entrada y otras ventanas del sistema en la ventana de la aplicación.

Normalmente no es necesario tratar con esta función, ya que la decoración de ventana predeterminada dada a las aplicaciones se encarga de aplicarla al contenido de la ventana. Si usas #SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN o #SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION no será el caso, y tu contenido se puede colocar bajo esos elementos del sistema. Después, puede usar este método dentro de la jerarquía de vistas si tiene partes de la interfaz de usuario que le gustaría asegurarse de que no se tratan.

La implementación predeterminada de este método simplemente aplica los conjuntos de contenido al relleno de la vista, consumiendo ese contenido (modificando los conjuntos para que sean 0) y devolviendo true. Este comportamiento está desactivado de forma predeterminada, pero se puede habilitar a través de #setFitsSystemWindows(boolean).

El recorrido de esta función hacia abajo por la jerarquía es la profundidad en primer lugar. El mismo objeto de conjuntos de contenido se propaga hacia abajo en la jerarquía, por lo que todos los cambios realizados en él se verán en todas las vistas siguientes (incluidas potencialmente las anteriores en la jerarquía, ya que se trata de un recorrido en profundidad). La primera vista que devuelve true anulará todo el recorrido.

La implementación predeterminada funciona bien para una situación en la que se usa con un contenedor que cubre toda la ventana, lo que le permite aplicar los conjuntos adecuados a su contenido en todos los bordes. Si necesita un diseño más complicado (como dos ventanas del sistema de ajuste de vistas diferentes, una en la parte superior de la ventana y otra en la parte inferior), puede invalidar el método y controlar los conjuntos, sin embargo, le gustaría. Tenga en cuenta que los conjuntos proporcionados por el marco siempre son relativos a los bordes lejanos de la ventana, no teniendo en cuenta la ubicación de la vista llamada dentro de esa ventana. (De hecho, cuando se llama a este método aún no sabe dónde colocará la vista, como se hace antes de que se produzca el diseño).

Nota: a diferencia de muchos métodos View, no hay ninguna fase de envío a esta llamada. Si la invalida en un ViewGroup y desea permitir que la llamada continúe con los elementos secundarios, debe asegurarse de llamar a la super implementación.

Este es un diseño de ejemplo que hace uso de ventanas del sistema de ajuste para tener controles para una vista de vídeo colocada dentro de las decoraciones de ventana que oculta y muestra. Esto se puede usar con código como el segundo ejemplo (reproductor de vídeo) que se muestra en #setSystemUiVisibility(int).

{

Este miembro está en desuso. A partir de la API 20, use #dispatchApplyWindowInsets(WindowInsets) para aplicar conjuntos a vistas. Las vistas deben invalidar #onApplyWindowInsets(WindowInsets) o usar #setOnApplyWindowInsetsListener(android.view.View.OnApplyWindowInsetsListener) para implementar el control de sus propios conjuntos.

Java documentación para android.view.View.fitSystemWindows(android.graphics.Rect).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

Consulte también