Junior — Middle
Cum transmiți informații între două fragmente în aplicație?
sobes.tech AI
Răspuns de la AI
Pentru a transmite informații între două fragmente în Android, de obicei se utilizează mai multe abordări:
-
Prin Activity: Fragmentele comunică prin intermediul Activity-ului părinte, care acționează ca un intermediar.
-
Utilizarea ViewModel-ului cu ciclul de viață comun cu Activity: Se creează un ViewModel asociat cu Activity, iar ambele fragmente au acces la el, schimbând date prin LiveData.
-
Argumente ale fragmentului: La crearea celui de-al doilea fragment, se pot transmite date printr-un Bundle folosind metoda
setArguments().
Exemplu de transmitere prin ViewModel:
class SharedViewModel : ViewModel() {
val selectedData = MutableLiveData<String>()
}
// În primul fragment
sharedViewModel.selectedData.value = "Date pentru transmitere"
// În al doilea fragment
sharedViewModel.selectedData.observe(viewLifecycleOwner) { data ->
// Utilizăm datele primite
}