16 Activities und deren Lebenszyklus

Sowohl Activities als auch Fragments sind wesentliche Bausteine in Android. Sie haben jeweils eigene Lebenszyklen und spezielle Rollen in der Struktur einer Android-App. Hier sind die Hauptunterschiede:

16.1 Activity

16.2 Fragment

Zusammenfassend lässt sich sagen, dass Activities und Fragments ähnliche Rollen spielen, aber auf unterschiedliche Skalen. Activities sind für größere Aufgaben und Übergänge zwischen verschiedenen App-Funktionen verantwortlich, während Fragments eher dazu dienen, dynamische und anpassungsfähige Benutzeroberflächen innerhalb einer bestimmten Activity zu schaffen. Beide sind jedoch unerlässlich für das Erstellen effektiver und benutzerfreundlicher Android-Apps.

Eine Activity in Android repräsentiert eine einzelne Bildschirmoberfläche, die der Benutzer sehen und mit der er interagieren kann. Jede Activity hat einen spezifischen Lebenszyklus, der definiert, wie die Activity erstellt, gestartet, angehalten, fortgesetzt und zerstört wird. Dieser Lebenszyklus wird durch eine Reihe von Methoden repräsentiert, die das Android-System aufruft, wenn eine Activity von einem Zustand in den anderen übergeht.

16.3 Hauptmethoden des Lebenszyklus einer Activity

16.4 Weitere Lifecycle Hooks

Es gibt auch andere Lebenszyklusmethoden wie onRestart(), die aufgerufen wird, wenn eine gestoppte Activity wieder gestartet wird. Diese Methode wird jedoch nicht so häufig verwendet wie die anderen.

Jede dieser Methoden gibt Ihnen die Möglichkeit, Ihre Anwendung an die spezifischen Zustände des Lebenszyklus anzupassen und sicherzustellen, dass Ihre Anwendung sich korrekt verhält, wenn der Benutzer zwischen verschiedenen Activities wechselt und wenn das System Ressourcen verwaltet.

Es ist wichtig zu beachten, dass der Lebenszyklus einer Activity eng mit dem sichtbaren und interaktiven Zustand der Activity verbunden ist und dass der Lebenszyklus dazu dient, sicherzustellen, dass Ihre Anwendung die Benutzererfahrung respektiert und die Systemressourcen effizient verwaltet.

import android.os.Bundle
import android.app.Activity
import android.view.Menu

class MainActivity : Activity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

    override fun onCreateOptionsMenu(menu: Menu?): Boolean {
        // Inflate the menu; this adds items 
        // to the action bar if it is present.
        menuInflater.inflate(R.menu.main, menu)
        return true
    }
}

Hier ist eine sehr grundlegende Android Activity. onCreate() ist die Methode, die aufgerufen wird, wenn die Activity erstellt wird. Innerhalb dieser Methode wird in der Regel setContentView() aufgerufen, um das Layout für die Activity festzulegen. Das Layout wird normalerweise in einer separaten XML-Datei definiert.

onCreateOptionsMenu() ist eine Methode, die das Menü für diese Activity erstellt. Es bläht das Menü auf, indem es `getMenuInflater().inflate() aufruft und das Menülayout, das in einer separaten XML-Datei definiert ist, und das Menüobjekt, das diese Methode erhält, übergibt.

Bitte stellen Sie sicher, dass Sie den oben genannten Code an Ihre spezifischen Anforderungen anpassen. Das obige Beispiel ist sehr grundlegend und enthält möglicherweise nicht alle Funktionen, die Sie benötigen.

Wenn Sie eine andere Sprache oder ein anderes Framework verwenden, lassen Sie es mich bitte wissen, und ich kann Ihnen ein spezifischeres Beispiel geben.

Die Lifecycle-Methoden in Android ermöglichen es Ihnen, den Zustand Ihrer App während ihrer Ausführung zu steuern. Im Folgenden finden Sie eine kurze Beschreibung des Lifecycles von Activities, Actions und Fragments.

16.5 Fragment-Lifecycle

Der Fragment-Lifecycle ähnelt dem Activity-Lifecycle, hat aber einige zusätzliche Zustände:

  1. onAttach(): Diese Methode wird aufgerufen, wenn das Fragment an die Activity angehängt wird.

  2. onCreate(): Diese Methode wird aufgerufen, wenn das Fragment zum ersten Mal erstellt wird.

  3. onCreateView(): Diese Methode wird aufgerufen, um das Layout des Fragments zu erstellen.

  4. onActivityCreated(): Diese Methode wird aufgerufen, nachdem die onCreate() Methode der Activity aufgerufen wurde.

  5. onStart(): Diese Methode wird aufgerufen, wenn das Fragment sichtbar wird.

  6. onResume(): Diese Methode wird aufgerufen, wenn das Fragment im Vordergrund ist und der Benutzer mit ihm interagieren kann.

  7. onPause(): Diese Methode wird aufgerufen, wenn das Fragment pausiert wird.

  8. onStop(): Diese Methode wird aufgerufen, wenn das Fragment gestoppt wird.

  9. onDestroyView(): Diese Methode wird aufgerufen, bevor die Ansicht des Fragments zerstört wird.

  10. onDestroy(): Diese Methode wird aufgerufen, um das Fragment zu zerstören.

  11. onDetach(): Diese Methode wird aufgerufen, wenn das Fragment von der Activity getrennt wird.

16.6 Action-Lifecycle

Die “Actions” in Android sind nicht mit eigenen Lifecycle-Methoden verbunden, sondern sind eng mit dem Intent-System verbunden. Eine “Action” ist eine Beschreibung dessen, was eine Intent-Aktion tun soll. Sie ist in der Regel durch eine Konstante wie ACTION_VIEW, ACTION_EDIT usw. definiert. Diese “Actions” steuern den Übergang zwischen den Zuständen in Activities oder Fragments und bestimmen, wie Ihre App auf verschiedene System- oder Benutzeraktionen reagiert.

Es ist wichtig, dass Entwickler diese Lifecycles verstehen und entsprechend darauf reagieren, um effiziente Apps zu erstellen und Ressourcenlecks zu vermeiden. Jede Methode gibt Ihnen

die Möglichkeit, spezifische Aktionen durchzuführen, wenn sich der Zustand Ihrer App ändert. Sie können beispielsweise Ressourcen im onPause() oder onStop() Zustand freigeben und sie dann in onResume() oder onStart() wiederherstellen.