Junior — Middle
Come si possono trasmettere dati tra frammenti in un'applicazione?
sobes.tech AI
Risposta dell'AI
I dati tra i frammenti in Android possono essere trasmessi in diversi modi:
- Attraverso Bundle durante la creazione del frammento — passare i dati negli argomenti del frammento usando
setArguments()e recuperarli tramitegetArguments().
val fragment = MyFragment()
val bundle = Bundle()
bundle.putString("key", "value")
fragment.arguments = bundle
-
Attraverso ViewModel, condiviso tra attività e frammenti — usare
ViewModelper memorizzare e scambiare dati tra frammenti. -
Attraverso interfacce e callback — il frammento chiama metodi dell'attività, che trasmette i dati ad un altro frammento.
-
Attraverso SharedPreferences o database — per una memorizzazione e uno scambio più permanenti.
Il metodo più raccomandato è usare ViewModel con LiveData per uno scambio di dati reattivo e sicuro tra frammenti.