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ść:
-
Przez Activity: Fragmenty komunikują się przez nadrzędną Activity, która działa jako pośrednik.
-
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.
-
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
}