Sobes.tech
Junior

Co je to LifecycleOwner?

sobes.tech AI

Odpověď od AI

Rozhraní představující komponentu s životním cyklem (Lifecycle). Umožňuje jiným objektům (LifecycleObserverům) sledovat stav životního cyklu této komponenty a reagovat na jeho změny.

Příklady LifecycleOwner v Androidu:

  • Activity
  • Fragment
  • ViewModel (vyžaduje speciální Hilt/AndroidX Lifecycler)

Hlavní použití je bezpečné řízení zdrojů (přihlášení, obslužné rutiny) v závislosti na stavu komponenty.

class MyObserver : LifecycleObserver {

    @OnLifecycleEvent(Lifecycle.Event.ON_START)
    fun onStart() {
        // Provést akce při startu LifecycleOwner
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
    fun onStop() {
        // Provést akce při zastavení LifecycleOwner
    }
}

// V LifecycleOwner (například Activity)
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    lifecycle.addObserver(MyObserver()) // Přidání pozorovatele
}