Junior — Middle
¿Qué métodos se utilizan para intercambiar datos entre Fragmentos en Android?
sobes.tech AI
Respuesta de la IA
La transferencia de datos entre Fragmentos en Android se puede realizar de varias maneras:
-
A través de Activity — los fragmentos se comunican mediante una Activity principal, que actúa como intermediario. Por ejemplo, un fragmento llama a un método de la Activity, pasando datos, y la Activity los transmite a otro fragmento.
-
Uso de ViewModel con el ciclo de vida de la Activity — un ViewModel compartido, vinculado a la Activity, permite a los fragmentos intercambiar datos a través de LiveData.
-
Uso de interfaces — el fragmento define una interfaz para transmitir datos, que implementa la Activity.
-
EventBus u otras bibliotecas de eventos — permiten enviar eventos entre componentes.
Ejemplo con ViewModel:
class SharedViewModel : ViewModel() {
val selected = MutableLiveData<String>()
fun select(item: String) {
selected.value = item
}
}
// En Fragment A
viewModel.select("Datos")
// En Fragment B
viewModel.selected.observe(viewLifecycleOwner) { data ->
// procesamiento de datos
}