Welke methoden worden gebruikt voor het uitwisselen van gegevens tussen Fragmenten in Android?
sobes.tech AI
Antwoord van AI
Gegevensuitwisseling tussen Fragmenten in Android kan op verschillende manieren worden gerealiseerd:
-
Via Activity — fragmenten communiceren via een hoofd-Activity, die als tussenpersoon fungeert. Bijvoorbeeld, een fragment roept een methode van de Activity aan en geeft gegevens door, en de Activity geeft deze door aan een ander fragment.
-
Gebruik van ViewModel met de levenscyclus van de Activity — een gedeeld ViewModel, gekoppeld aan de Activity, stelt fragmenten in staat om gegevens uit te wisselen via LiveData.
-
Gebruik van interfaces — het fragment definieert een interface voor gegevensoverdracht, die door de Activity wordt geïmplementeerd.
-
EventBus of andere gebeurtenisbibliotheken — maken het mogelijk om gebeurtenissen tussen componenten te verzenden.
Voorbeeld met ViewModel:
class SharedViewModel : ViewModel() {
val selected = MutableLiveData<String>()
fun select(item: String) {
selected.value = item
}
}
// In Fragment A
viewModel.select("Gegevens")
// In Fragment B
viewModel.selected.observe(viewLifecycleOwner) { data ->
// gegevensverwerking
}