Lenguaje

Activity.OnWindowFocusChanged(Boolean) Método

Definición

Se llama cuando el actual Window de la actividad obtiene o pierde el foco.

[Android.Runtime.Register("onWindowFocusChanged", "(Z)V", "GetOnWindowFocusChanged_ZHandler")]
public virtual void OnWindowFocusChanged(bool hasFocus);
[<Android.Runtime.Register("onWindowFocusChanged", "(Z)V", "GetOnWindowFocusChanged_ZHandler")>]
abstract member OnWindowFocusChanged : bool -> unit
override this.OnWindowFocusChanged : bool -> unit

Parámetros

hasFocus
Boolean

Indica si la ventana de esta actividad tiene el foco.

Implementaciones

Atributos

Comentarios

Se llama cuando la ventana actual de la actividad obtiene o pierde el foco. Este es el mejor indicador de si esta actividad es la entidad con la que interactúa activamente el usuario. La implementación predeterminada borra el estado de seguimiento de claves, por lo que siempre se debe llamar. Tenga en cuenta que esto proporciona información sobre el estado de enfoque global, que se administra independientemente del ciclo de vida de la actividad. Por lo tanto, aunque los cambios de foco generalmente tendrán alguna relación con los cambios de ciclo de vida (una actividad detenida no generalmente obtendrá el foco de ventana), no debe confiar en ningún orden determinado entre las devoluciones de llamada aquí y las de los otros métodos de ciclo de vida, como onResume(). Sin embargo, como regla general, una actividad en primer plano tendrá el foco de la ventana... a menos que haya mostrado otros diálogos o elementos emergentes que toman el foco de entrada, en cuyo caso la propia actividad no tendrá el foco cuando las otras ventanas lo tengan. Del mismo modo, el sistema puede mostrar ventanas de nivel de sistema (como el panel de notificaciones de la barra de estado o una alerta del sistema) que tomará temporalmente el foco de entrada de ventana sin pausar la actividad en primer plano. A partir de Build.VERSION_CODES. Q puede haber varias actividades reanudadas al mismo tiempo en modo de varias ventanas, por lo que el estado reanudado no garantiza el foco de la ventana aunque no haya superposiciones anteriores. Si la intención es saber cuándo una actividad es la más activa, la que el usuario interactúó con la última entre todas las actividades, pero no incluye ventanas que no son de actividad como diálogos y elementos emergentes, se debe usar onTopResumedActivityChanged(boolean). En versiones de plataforma anteriores a Build.VERSION_CODES. Q, onResume() es el mejor indicador.

Consulte también:

Referencia de Android para android.app.Activity.onWindowFocusChanged.

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