Sobes.tech
Junior

Wat is een LifecycleOwner?

sobes.tech AI

Antwoord van AI

Interface die een component met een levenscyclus (Lifecycle) vertegenwoordigt. Hiermee kunnen andere objecten (LifecycleObserver) de toestand van de levenscyclus van dit component volgen en erop reageren.

Voorbeelden van LifecycleOwner in Android:

  • Activity
  • Fragment
  • ViewModel (vereist een speciale Hilt/AndroidX Lifecycler)

Het belangrijkste gebruik is het veilig beheren van bronnen (abonnementen, handlers) afhankelijk van de toestand van het component.

class MyObserver : LifecycleObserver {

    @OnLifecycleEvent(Lifecycle.Event.ON_START)
    fun onStart() {
        // Acties uitvoeren bij het starten van de LifecycleOwner
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
    fun onStop() {
        // Acties uitvoeren bij het stoppen van de LifecycleOwner
    }
}

// In de LifecycleOwner (bijvoorbeeld, Activity)
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    lifecycle.addObserver(MyObserver()) // Observer toevoegen
}