No tienes acceso a esta clase

¬°Contin√ļa aprendiendo! √önete y comienza a potenciar tu carrera

ViewModel

30/32
Recursos

Aportes 6

Preguntas 0

Ordenar por:

¬ŅQuieres ver m√°s aportes, preguntas y respuestas de la comunidad?

Recuerden agregar la dependencia de ViewModel en su archivo build.gradle de la app

implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0"

ViewModel
Es una clase que nos ayuda a manejar el ciclo de vida de un contexto, dándonos sólo un método (onCleared()) donde deberíamos liberar recursos.


View esta suscrita a ViewModel, es decir que no necesitan contratos

En versiones recientes de Viewmodel, para inicializar una instancia a un ViewModel ya no es necesario utilizar el llamado a ViewModelProviders. Ahora podemos inicializar el ViewModel en la misma línea en la que lo declaramos:

class MainActivity: AppCompatActivity() {
	private val pushViewModel: PushViewModel by viewModels()
	...
}

Se dise√Ī√≥ la clase ViewModel a fin de almacenar y administrar datos relacionados con la IU de manera optimizada para los ciclos de vida. La clase ViewModel permite que los datos sobrevivan a cambios de configuraci√≥n, como las rotaciones de pantallas.
Documentacion oficial de android: https://developer.android.com/topic/libraries/architecture/viewmodel#kotlin

En lugar de declarar el view model como nulable mejor la inicializas de forma tard√≠a con `lateinit var` De esta manera, evitas tener que realizar checkeos de variables nulas. A√ļn as√≠, lo mejor es instanciar el view model dentro del cuerpo de la clase y no dentro del cuerpo de un m√©todo as√≠: `private val pushViewModel: PushViewModel by viewModels()`