Junior — Middle
Ako možno prenášať údaje medzi fragmentmi v aplikácii?
sobes.tech AI
Odpoveď od AI
Dáta medzi fragmentmi v Androidu je možné prenášať niekoľkými spôsobmi:
- Cez Bundle pri vytváraní fragmentu — odovzdajte údaje v argumentoch fragmentu pomocou
setArguments()a získajte ich cezgetArguments().
val fragment = MyFragment()
val bundle = Bundle()
bundle.putString("key", "value")
fragment.arguments = bundle
-
Cez ViewModel, spoločný pre aktivitu a fragmenty — použite
ViewModelna uloženie a výmenu údajov medzi fragmentmi. -
Cez rozhrania a callbacky — fragment volá metódy aktivity, ktorá odovzdáva údaje inému fragmentu.
-
Cez SharedPreferences alebo databázu — pre trvalejšie uloženie a výmenu.
Najviac odporúčaný spôsob je použitie ViewModel s LiveData pre reaktívnu a bezpečnú výmenu údajov medzi fragmentmi.