Junior — Middle
Jak można przekazywać dane między fragmentami w aplikacji?
sobes.tech AI
Odpowiedź od AI
Dane między fragmentami w Android można przekazywać na kilka sposobów:
- Przez Bundle podczas tworzenia fragmentu — przekazać dane w argumentach fragmentu za pomocą
setArguments()i odczytać je przezgetArguments().
val fragment = MyFragment()
val bundle = Bundle()
bundle.putString("key", "value")
fragment.arguments = bundle
-
Przez ViewModel, wspólny dla aktywności i fragmentów — używać
ViewModeldo przechowywania i wymiany danych między fragmentami. -
Przez interfejsy i callbacki — fragment wywołuje metody aktywności, która przekazuje dane do innego fragmentu.
-
Przez SharedPreferences lub bazę danych — dla bardziej trwałego przechowywania i wymiany.
Najbardziej zalecany sposób to użycie ViewModel z LiveData dla reaktywnej i bezpiecznej wymiany danych między fragmentami.