Junior — Middle
Jaké metody se používají k výměně dat mezi Fragmenty v Androidu?
sobes.tech AI
Odpověď od AI
Výmena údajov medzi Fragmentmi v Androidu môže byť realizována několika způsoby:
-
Přes Activity — fragmenty komunikují přes nadřazenou Activity, která slouží jako prostředník. Například, jeden fragment volá metodu Activity s předáním dat, a Activity je předává jinému fragmentu.
-
Použití ViewModel s životním cyklem Activity — sdílený ViewModel, spojený s Activity, umožňuje fragmentům vyměňovat si data přes LiveData.
-
Použití rozhraní — fragment definuje rozhraní pro přenos dat, které implementuje Activity.
-
EventBus nebo jiné knihovny událostí — umožňují odesílat události mezi komponentami.
Příklad s ViewModel:
class SharedViewModel : ViewModel() {
val selected = MutableLiveData<String>()
fun select(item: String) {
selected.value = item
}
}
// V Fragment A
viewModel.select("Data")
// V Fragment B
viewModel.selected.observe(viewLifecycleOwner) { data ->
// zpracování dat
}