Sobes.tech
Junior — Middle

Jak przekazujesz informacje między dwoma fragmentami w aplikacji?

sobes.tech AI

Odpowiedź od AI

Aby przekazać informacje między dwoma fragmentami w Androidzie, zwykle stosuje się kilka podejść:

  1. Przez Activity: Fragmenty komunikują się przez nadrzędną Activity, która działa jako pośrednik.

  2. Użycie ViewModel z wspólnym cyklem życia z Activity: Tworzy się ViewModel powiązany z Activity, a oba fragmenty mają do niego dostęp, wymieniając dane przez LiveData.

  3. Argumenty fragmentu: Podczas tworzenia drugiego fragmentu można przekazać dane przez Bundle za pomocą metody setArguments().

Przykład przekazywania przez ViewModel:

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

// W pierwszym fragmencie
sharedViewModel.selectedData.value = "Dane do przekazania"

// W drugim fragmencie
sharedViewModel.selectedData.observe(viewLifecycleOwner) { data ->
    // Używamy odebranych danych
}