Junior — Middle
Koje metode možete koristiti za organizovanje razmene podataka između dva fragmenta u aplikaciji?
sobes.tech АИ
Одговор од АИ
У Android-у, за размену података између два фрагмента може се користити неколико приступа:
-
Преко Activity — фрагменти комуницирају преко родитељске Activity, која делује као посредник. Један фрагмент преноси податке у Activity, а други их прима.
-
ViewModel са LiveData — заједнички ViewModel, повезан са Activity, омогућава фрагментима да посматрају промене у подацима и размењују их реактивно.
-
Callback интерфејси — фрагмент имплементира интерфејс који други фрагмент позива преко Activity.
-
SharedPreferences или базе података — за трајније чување и размену података.
Пример са ViewModel:
class SharedViewModel : ViewModel() {
val selectedItem = MutableLiveData<String>()
}
// У првом фрагменту
sharedViewModel.selectedItem.value = "Подаци за пренос"
// У другом фрагменту
sharedViewModel.selectedItem.observe(viewLifecycleOwner) { data ->
// Обрада примљених података
}
Овај начин се сматра модерним и погодним за размену података између фрагмената у оквиру једне Activity.