Sprache

Activity.OnSaveInstanceState Methode

Definition

Überlädt

Name Beschreibung
OnSaveInstanceState(Bundle)

Wird aufgerufen, um den Status pro Instanz aus einer Aktivität abzurufen, bevor er beendet wird, damit der Zustand in onCreate(Bundle) oder onRestoreInstanceState(Bundle) wiederhergestellt werden kann (das von dieser Methode aufgefüllte Bundle wird an beide übergeben).

OnSaveInstanceState(Bundle, PersistableBundle)

Dies ist identisch mit "onSaveInstanceState(Bundle)", wird jedoch für Aktivitäten aufgerufen, die mit dem Attribut "R.attr.persistableMode" auf persistAcrossReboots festgelegt wurden.

OnSaveInstanceState(Bundle)

Wird aufgerufen, um den Status pro Instanz aus einer Aktivität abzurufen, bevor er beendet wird, damit der Zustand in onCreate(Bundle) oder onRestoreInstanceState(Bundle) wiederhergestellt werden kann (das von dieser Methode aufgefüllte Bundle wird an beide übergeben).

[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

Parameter

outState
Bundle

Bündel: Bündel, in dem Der gespeicherte Zustand platziert werden soll. Dieser Wert darf nicht NULL sein.

Attribute

Hinweise

Wird aufgerufen, um den Status pro Instanz aus einer Aktivität abzurufen, bevor er beendet wird, damit der Zustand in onCreate(Bundle) oder onRestoreInstanceState(Bundle) wiederhergestellt werden kann (das von dieser Methode aufgefüllte Bundle wird an beide übergeben). Diese Methode wird aufgerufen, bevor eine Aktivität getötet werden kann, damit sie, wenn sie in Zukunft zurückkommt, ihren Zustand wiederherstellen kann. Wenn z. B. Aktivität B vor Aktivität A gestartet wird und an einem bestimmten Punkt Aktivität A zum Zurückfordern von Ressourcen getötet wird, hat Aktivität A die Möglichkeit, den aktuellen Status der Benutzeroberfläche über diese Methode zu speichern, damit der Status der Benutzeroberfläche, wenn der Benutzer zu Aktivität A zurückkehrt, über onCreate(Bundle) oder onRestoreInstanceState(Bundle) wiederhergestellt werden kann. Verwechseln Sie diese Methode nicht mit Aktivitätslebenszyklusrückrufen wie onPause(), die immer aufgerufen wird, wenn der Benutzer nicht mehr aktiv mit einer Aktivität interagiert, oder onStop(), die aufgerufen wird, wenn die Aktivität unsichtbar wird. Ein Beispiel, wenn onPause() und onStop() aufgerufen werden und nicht diese Methode ist, wenn ein Benutzer von Aktivität B zu Aktivität A navigiert: Es ist nicht erforderlich, onSaveInstanceState(Bundle) für B aufzurufen, da diese bestimmte Instanz nie wiederhergestellt wird, sodass das System den Aufruf verhindert. Ein Beispiel, wenn onPause() aufgerufen wird und nicht onSaveInstanceState(Bundle) ist, wenn Aktivität B vor Aktivität A gestartet wird: Das System kann verhindern, dass onSaveInstanceState(Bundle) für Aktivität A aufgerufen wird, wenn sie während der Lebensdauer von B nicht getötet wird, da der Status der Benutzeroberfläche von A intakt bleibt. Die Standardimplementierung kümmert sich um den größten Teil des Ui-Zustands pro Instanz, indem "View.onSaveInstanceState()" für jede Ansicht in der Hierarchie aufgerufen wird, die eine ID enthält, und indem die ID der aktuell fokussierten Ansicht gespeichert wird (die alle durch die Standardimplementierung von onRestoreInstanceState(Bundle)) wiederhergestellt werden. Wenn Sie diese Methode außer Kraft setzen, um zusätzliche Informationen zu speichern, die nicht von jeder einzelnen Ansicht erfasst werden, möchten Sie wahrscheinlich die Standardimplementierung aufrufen, andernfalls sollten Sie bereit sein, den gesamten Zustand jeder Ansicht selbst zu speichern. Wenn diese Methode aufgerufen wird, tritt diese Methode nach onStop() für Anwendungen auf, die auf Plattformen abzielen, beginnend mit Build.VERSION_CODES.P. Für Anwendungen, die auf frühere Plattformversionen abzielen, erfolgt diese Methode vor onStop() und es gibt keine Garantien darüber, ob sie vor oder nach onPause() auftreten wird.

Siehe auch:

Android-Referenz für android.app.Activity.onSaveInstanceState.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

OnSaveInstanceState(Bundle, PersistableBundle)

Dies ist identisch mit "onSaveInstanceState(Bundle)", wird jedoch für Aktivitäten aufgerufen, die mit dem Attribut "R.attr.persistableMode" auf persistAcrossReboots festgelegt wurden.

[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

Parameter

outState
Bundle

Bündel: Bündel, in dem Der gespeicherte Zustand platziert werden soll. Dieser Wert darf nicht NULL sein.

outPersistentState
PersistableBundle

PersistableBundle: Zustand, der über Neustarts gespeichert wird. Dieser Wert darf nicht NULL sein.

Attribute

Hinweise

Dies ist identisch mit "onSaveInstanceState(Bundle)", wird jedoch für Aktivitäten aufgerufen, die mit dem Attribut "R.attr.persistableMode" auf persistAcrossReboots festgelegt wurden. Der übergebene PersistableBundle wird gespeichert und in onCreate(Bundle,PersistableBundle) angezeigt, wenn diese Aktivität nach dem nächsten Geräteneustart neu gestartet wird.

Siehe auch:

Android-Referenz für android.app.Activity.onSaveInstanceState.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: