Junior — Middle
Koje metode se koriste za razmenu podataka između Fragment-a u Android-u?
sobes.tech АИ
Одговор од АИ
Razmena podataka između Fragment-a u Android-u može se realizovati na više načina:
-
Kroz Activity — fragmenti komuniciraju putem roditeljske Activity, koja deluje kao posrednik. Na primer, jedan fragment poziva metodu Activity-ja, prosleđujući podatke, a Activity ih prosleđuje drugom fragmentu.
-
Korišćenje ViewModel-a sa životnim ciklusom Activity-ja — zajednički ViewModel, povezan sa Activity-jem, omogućava fragmentima razmenu podataka putem LiveData.
-
Korišćenje interfejsa — fragment definiše interfejs za prenos podataka, koji implementira Activity.
-
EventBus ili druge biblioteke događaja — omogućavaju slanje događaja između komponenti.
Primer sa ViewModel-om:
class SharedViewModel : ViewModel() {
val selected = MutableLiveData<String>()
fun select(item: String) {
selected.value = item
}
}
// U Fragment A
viewModel.select("Podaci")
// U Fragment B
viewModel.selected.observe(viewLifecycleOwner) { data ->
// obrada podataka
}