Junior — Middle
Jak lze přenášet data mezi fragmenty v aplikaci?
sobes.tech AI
Odpověď od AI
Data mezi fragmenty v Androidu lze přenášet několika způsoby:
- Pomocí Bundle při vytváření fragmentu — předat data v argumentech fragmentu pomocí
setArguments()a získat je přesgetArguments().
val fragment = MyFragment()
val bundle = Bundle()
bundle.putString("key", "value")
fragment.arguments = bundle
-
Pomocí ViewModel, sdíleného mezi aktivitou a fragmenty — použít
ViewModelpro ukládání a výměnu dat mezi fragmenty. -
Pomocí rozhraní a callbacků — fragment volá metody aktivity, která předává data jinému fragmentu.
-
Pomocí SharedPreferences nebo databáze — pro trvalejší uložení a výměnu.
Nejvíce doporučený způsob je použití ViewModel s LiveData pro reaktivní a bezpečnou výměnu dat mezi fragmenty.