Heim > häufiges Problem > Hauptteil

Beschreiben Sie kurz den Lebenszyklus der Aktivität

angryTom
Freigeben: 2019-07-23 11:52:18
Original
26631 Leute haben es durchsucht

Beschreiben Sie kurz den Lebenszyklus der Aktivität

Empfohlenes Tutorial: Android-Tutorial

In diesem Artikel wird die Aktivität kurz vorgestellt Lebenszyklus, der Inhalt stammt hauptsächlich aus offiziellen Dokumenten.

Bevor wir jede Lebenszyklusmethode kurz beschreiben, geben wir einen Gesamtüberblick. Wir können den Aktivitätslebenszyklus auf drei Ebenen überwachen

Vollständiger Lebenszyklus: Der vollständige Lebenszyklus beginnt mit dem Rückruf der onCreate-Methode und endet mit dem Rückruf der onDestroy-Methode
Sichtbarer Zyklus: Der Der sichtbare Zyklus beginnt. Der Vordergrundzyklus beginnt mit dem Rückruf der onResume-Methode und endet mit dem Rückruf der onPause-Methode.

Das Folgende ist eine kurze Einführung. Schauen wir uns jede Lebenszyklusmethode an :

onCreate Die erste Methode des Lebenszyklus, , zeigt an, dass die Aktivität erstellt (gestartet) wird. Besonderer Hinweis: Wenn Sie die Finish-Methode innerhalb dieser Methode aufrufen, wird der onDestroy-Rückruf sofort ausgelöst und andere Lebenszyklen werden nicht ausgeführt

onRestart Die Voraussetzung für das Auslösen dieser Methode : Die onStop-Methode wird aufgerufen. Die onStop-Methode wird aufgerufen, wenn die Aktivität unsichtbar ist und wieder sichtbar wird. Nachdem diese Methode zurückgerufen wurde, löst das System nacheinander die Methoden onStart und onResume aus.

onStart wird aufgerufen, wenn die Aktivität sichtbar ist (die Aktivität befindet sich zu diesem Zeitpunkt nicht im Vordergrund): wird nach der onCreate-Methode aufgerufen oder wenn die Aktivität aufgrund der onStop-Methode unsichtbar ist aufgerufen, und die Aktivität ist wieder sichtbar

onResume Der Rückruf dieser Methode erkennt, dass die Aktivität im Vordergrund steht . Aus der offiziellen Dokumentation geht hervor, dass dies besser für den Start von Animationen und den exklusiven Zugriff auf Geräte (z. B. Kameras) geeignet ist

onPause Activity wird in den Hintergrund treten, um diese Methode aufzurufen . Es ist wichtig zu beachten, dass, wenn Aktivität A Aktivität B startet, Aktivität B erst erstellt wird, wenn der Rückruf der onPause-Methode von Aktivität A abgeschlossen ist. Führen Sie daher in dieser Rückrufmethode keine zeitaufwändigen Vorgänge aus.

onStop Diese Methode wird aufgerufen, wenn sich die Aktivität von sichtbar zu unsichtbar ändert.

onDestroy Die letzte Methode des Lebenszyklus, die angibt, dass die Aktivität bald verfügbar sein wird zerstört. In der offiziellen Dokumentation heißt es, dass das System in einigen Fällen den Aktivitätshostprozess einfach und grob abbricht (wie im Diagramm unten mit 1 markiert), sodass wir uns nicht auf diese Methode zur Datenspeicherung verlassen sollten, sondern diese Methode zur Ressourcenfreigabe verwenden können Betrieb

Das folgende Bild ist das Diagramm im offiziellen Dokument

Beschreiben Sie kurz den Lebenszyklus der Aktivität

Aktivitätslebenszyklusdiagramm

Dieses Bild ist sehr klar und streng , aber die offizielle Beschreibung jeder Lebenszyklus-Rückrufmethode im Dokument ist nicht sehr detailliert. Wenn Sie das Dokument also nicht sorgfältig lesen, ist es schwierig, die Richtung der Lebenszyklus-Methoden im Bild zu verstehen einige Methoden falsch verstehen. Beispielsweise verstehen einige Kinder möglicherweise die onStop-Methode falsch und glauben fälschlicherweise, dass diese Methode aufgerufen wird, wenn die Aktivität in den Hintergrund eintritt. Tatsächlich wird die onPause-Methode aufgerufen, wenn sie in den Hintergrund eintritt, und die onStop-Methode wird aufgerufen, wenn sie unsichtbar ist Kinder glauben fälschlicherweise, dass die onResume-Methode zurückgerufen wird. Tatsächlich sollten wir anhand des hasFocus-Parameters im öffentlichen void onWindowFocusChanged (boolean hasFocus) bestimmen, ob eine Interaktion möglich ist.

Ob die Aktivität sichtbar ist oder nicht und ob sie im Vordergrund steht, sind zwei verschiedene Dinge , onStart und onStop werden gepaart, um zu beschreiben, ob die Aktivität sichtbar ist; onPause und onResume werden gepaart, um zu beschreiben, ob die Aktivität im Vordergrund steht. Die Sichtbarkeit einer Aktivität bedeutet nicht, dass mit ihr interagiert werden kann, und ebenso kann es sein, dass mit ihr nicht interagiert werden kann, wenn sie im Vordergrund steht. Ein direktes Beispiel wäre, wenn die Aktivität einen Dialog anzeigt, die Aktivität zu diesem Zeitpunkt noch im Vordergrund steht, wir aber nicht mit der Aktivität interagieren können

Darüber hinaus glaube ich, dass viele Leute die mit 2 gekennzeichnete Richtung nicht persönlich überprüft haben im obigen Diagramm Ja, da es oft schwierig ist, dieses Szenario interaktiv nachzubilden. Für dieses Szenario können wir es durch Codesteuerung simulieren: Aktivität A startet Aktivität B und ruft direkt die Finish-Methode in der onCreate-Methode

von Aktivität B auf

Das obige ist der detaillierte Inhalt vonBeschreiben Sie kurz den Lebenszyklus der Aktivität. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!