Sobes.tech
Junior — Middle

¿Cómo se implementa el uso de ViewModel en Jetpack para gestionar el estado de la interfaz de usuario?

sobes.tech AI

Respuesta de la IA

ViewModel en Jetpack se utiliza para almacenar y gestionar el estado de la interfaz de usuario, manteniendo los datos durante cambios de configuración (por ejemplo, rotación de pantalla). ViewModel separa la lógica de la interfaz de usuario de la Activity o Fragment, lo que facilita las pruebas y el mantenimiento.

Ejemplo de uso:

class MyViewModel : ViewModel() {
    private val _text = MutableLiveData<String>()
    val text: LiveData<String> = _text

    fun updateText(newText: String) {
        _text.value = newText
    }
}

// En la Activity o Fragment
val viewModel = ViewModelProvider(this).get(MyViewModel::class.java)
viewModel.text.observe(this) { updatedText ->
    textView.text = updatedText
}

De esta forma, ViewModel almacena datos que sobreviven a la recreación de la UI y los proporciona a través de LiveData para una actualización reactiva de la interfaz.