Sobes.tech
Junior — Middle

Ce metode sunt utilizate pentru schimbul de date între Fragment-uri în Android?

sobes.tech AI

Răspuns de la AI

Schimbul de date între Fragment-uri în Android poate fi realizat în mai multe moduri:

  1. Prin Activity — fragmenturile comunică prin intermediul unei Activity părinte, care acționează ca un intermediar. De exemplu, un fragment apelează o metodă a Activity, transmitând date, iar Activity le transmite altui fragment.

  2. Utilizarea ViewModel-ului cu ciclul de viață al Activity — un ViewModel comun, legat de Activity, permite fragmentelor să schimbe date prin LiveData.

  3. Utilizarea interfețelor — fragmentul definește o interfață pentru transmiterea datelor, pe care o implementează Activity.

  4. EventBus sau alte biblioteci de evenimente — permit trimiterea de evenimente între componente.

Exemplu cu ViewModel:

class SharedViewModel : ViewModel() {
    val selected = MutableLiveData<String>()

    fun select(item: String) {
        selected.value = item
    }
}

// În Fragment A
viewModel.select("Date")

// În Fragment B
viewModel.selected.observe(viewLifecycleOwner) { data ->
    // procesarea datelor
}