Sobes.tech
Junior

Ce este LifecycleOwner?

sobes.tech AI

Răspuns de la AI

Interfața care reprezintă un component cu un ciclu de viață (Lifecycle). Permite altor obiecte (LifecycleObserver) să urmărească starea ciclului de viață al acestui component și să reacționeze la schimbările sale.

Exemple de LifecycleOwner în Android:

  • Activity
  • Fragment
  • ViewModel (necesită un Lifecycler special Hilt/AndroidX)

Utilizarea principală este gestionarea sigură a resurselor (abonamente, manipulatoare) în funcție de starea componentului.

class MyObserver : LifecycleObserver {

    @OnLifecycleEvent(Lifecycle.Event.ON_START)
    fun onStart() {
        // Efectuați acțiuni la pornirea LifecycleOwner
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
    fun onStop() {
        // Efectuați acțiuni la oprirea LifecycleOwner
    }
}

// În LifecycleOwner (de exemplu, Activity)
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    lifecycle.addObserver(MyObserver()) // Adăugați observatorul
}