Junior — Middle
Jak předáváte informace mezi dvěma fragmenty v aplikaci?
sobes.tech AI
Odpověď od AI
Pro přenos informací mezi dvěma fragmenty v Androidu se obvykle používá několik přístupů:
-
Přes Activity: Fragmenty komunikují přes rodičovskou Activity, která slouží jako prostředník.
-
Použití ViewModel s společným životním cyklem s Activity: Vytvoří se ViewModel spojený s Activity a oba fragmenty k němu mají přístup, vyměňujíce si data přes LiveData.
-
Argumenty fragmentu: Při vytváření druhého fragmentu lze data předat pomocí Bundle s metodou
setArguments().
Příklad přenosu přes ViewModel:
class SharedViewModel : ViewModel() {
val selectedData = MutableLiveData<String>()
}
// V prvním fragmentu
sharedViewModel.selectedData.value = "Data k přenosu"
// Ve druhém fragmentu
sharedViewModel.selectedData.observe(viewLifecycleOwner) { data ->
// Použijte přijatá data
}