Junior — Middle
Kako prenosite informacije između dva fragmenta u aplikaciji?
sobes.tech АИ
Одговор од АИ
Za prenos informacija između dva fragmenta u Androidu obično se koriste nekoliko pristupa:
-
Preko Activity: Fragmenti komuniciraju putem roditeljske Activity, koja služi kao posrednik.
-
Korišćenje ViewModel-a sa zajedničkim životnim ciklusom sa Activity: Kreira se ViewModel povezan sa Activity, i oba fragmenta mu pristupaju razmenjujući podatke putem LiveData.
-
Argumenti fragmenta: Pri kreiranju drugog fragmenta, mogu se proslediti podaci putem Bundle-a koristeći metodu
setArguments().
Primer prenosa putem ViewModel-a:
class SharedViewModel : ViewModel() {
val selectedData = MutableLiveData<String>()
}
// U prvom fragmentu
sharedViewModel.selectedData.value = "Podaci za prenos"
// U drugom fragmentu
sharedViewModel.selectedData.observe(viewLifecycleOwner) { data ->
// Koristite primljene podatke
}