Compartir a través de


Activity.OnSaveInstanceState Método

Definición

Sobrecargas

OnSaveInstanceState(Bundle)

Se llama para recuperar el estado por instancia de una actividad antes de eliminarse para que el estado se pueda restaurar en #onCreate o #onRestoreInstanceState (el Bundle rellenado por este método se pasará a ambos).

OnSaveInstanceState(Bundle, PersistableBundle)

Esto es lo mismo que #onSaveInstanceState pero se llama a para las actividades creadas con el atributo android.R.attr#persistableMode establecido persistAcrossRebootsen .

OnSaveInstanceState(Bundle)

Se llama para recuperar el estado por instancia de una actividad antes de eliminarse para que el estado se pueda restaurar en #onCreate o #onRestoreInstanceState (el Bundle rellenado por este método se pasará a ambos).

[Android.Runtime.Register("onSaveInstanceState", "(Landroid/os/Bundle;)V", "GetOnSaveInstanceState_Landroid_os_Bundle_Handler")]
protected virtual void OnSaveInstanceState (Android.OS.Bundle outState);
[<Android.Runtime.Register("onSaveInstanceState", "(Landroid/os/Bundle;)V", "GetOnSaveInstanceState_Landroid_os_Bundle_Handler")>]
abstract member OnSaveInstanceState : Android.OS.Bundle -> unit
override this.OnSaveInstanceState : Android.OS.Bundle -> unit

Parámetros

outState
Bundle

Agrupación en la que se va a colocar el estado guardado.

Atributos

Comentarios

Se llama para recuperar el estado por instancia de una actividad antes de eliminarse para que el estado se pueda restaurar en #onCreate o #onRestoreInstanceState (el Bundle rellenado por este método se pasará a ambos).

Se llama a este método antes de que se pueda eliminar una actividad para que, cuando vuelva algún tiempo en el futuro, pueda restaurar su estado. Por ejemplo, si la actividad B se inicia delante de la actividad A y, en algún momento, se elimina la actividad A para reclamar recursos, la actividad A tendrá la oportunidad de guardar el estado actual de su interfaz de usuario a través de este método para que cuando el usuario vuelva a la actividad A, el estado de la interfaz de usuario se puede restaurar a través #onCreate de o #onRestoreInstanceState.

No confunda este método con devoluciones de llamada del ciclo de vida de actividad, como #onPause, que siempre se llama cuando el usuario ya no interactúa activamente con una actividad, o #onStop que se llama cuando la actividad se vuelve invisible. Un ejemplo de cuándo #onPause y se llama a y #onStop no este método es cuando un usuario vuelve de la actividad B a la actividad A: no es necesario llamar #onSaveInstanceState a en B porque esa instancia determinada nunca se restaurará, por lo que el sistema evita llamarlo. Un ejemplo cuando #onPause se llama a y no #onSaveInstanceState es cuando se inicia la actividad B delante de la actividad A: el sistema puede evitar llamar a #onSaveInstanceState en la actividad A si no se mata durante la vigencia de B, ya que el estado de la interfaz de usuario de A permanecerá intacto.

La implementación predeterminada se encarga de la mayoría del estado de la interfaz de usuario por instancia mediante una llamada a android.view.View#onSaveInstanceState() en cada vista de la jerarquía que tiene un identificador y guardando el identificador de la vista centrada actualmente (todas las cuales se restauran mediante la implementación predeterminada de #onRestoreInstanceState). Si invalida este método para guardar información adicional no capturada por cada vista individual, es probable que quiera llamar a la implementación predeterminada; de lo contrario, debe estar preparado para guardar todo el estado de cada vista usted mismo.

Si se llama a , este método se producirá después #onStop de que las aplicaciones que tienen como destino plataformas a partir de android.os.Build.VERSION_CODES#P. En el caso de las aplicaciones destinadas a versiones anteriores de la plataforma, este método se producirá antes #onStop y no hay ninguna garantía sobre si se producirá antes o después #onPausede .

Documentación de Java para android.app.Activity.onSaveInstanceState(android.os.Bundle).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Consulte también

Se aplica a

OnSaveInstanceState(Bundle, PersistableBundle)

Esto es lo mismo que #onSaveInstanceState pero se llama a para las actividades creadas con el atributo android.R.attr#persistableMode establecido persistAcrossRebootsen .

[Android.Runtime.Register("onSaveInstanceState", "(Landroid/os/Bundle;Landroid/os/PersistableBundle;)V", "GetOnSaveInstanceState_Landroid_os_Bundle_Landroid_os_PersistableBundle_Handler")]
public virtual void OnSaveInstanceState (Android.OS.Bundle outState, Android.OS.PersistableBundle outPersistentState);
[<Android.Runtime.Register("onSaveInstanceState", "(Landroid/os/Bundle;Landroid/os/PersistableBundle;)V", "GetOnSaveInstanceState_Landroid_os_Bundle_Landroid_os_PersistableBundle_Handler")>]
abstract member OnSaveInstanceState : Android.OS.Bundle * Android.OS.PersistableBundle -> unit
override this.OnSaveInstanceState : Android.OS.Bundle * Android.OS.PersistableBundle -> unit

Parámetros

outState
Bundle

Agrupación en la que se va a colocar el estado guardado.

outPersistentState
PersistableBundle

Estado que se guardará en los reinicios.

Atributos

Comentarios

Esto es lo mismo que #onSaveInstanceState pero se llama a para las actividades creadas con el atributo android.R.attr#persistableMode establecido persistAcrossRebootsen . El android.os.PersistableBundle pasado se guardará y se presentará en #onCreate(Bundle, PersistableBundle) la primera vez que se reinicie esta actividad después del siguiente reinicio del dispositivo.

Documentación de Java para android.app.Activity.onSaveInstanceState(android.os.Bundle, android.os.PersistableBundle).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Consulte también

Se aplica a