Search code examples
javaandroidkotlinmvvmandroid-viewmodel

what is ViewModelFactory


what is viewModelFactory and when and why should I use it I am new to android and actually I can't understand these concepts in MVVM


Solution

  • ViewModelProviders and ViewModelProviders.Factory are used to ensure that only one instance of the viewModel is created across the configuration changes in an activity or if the activity is recreated. Also there is a callback onCleared() available in viewModel if you create the custom viewModel by extending ViewModel class in architecture components. This callback method is called when the activity is destroyed. So you can clear any instances you used in the viewModel. But for the proper working of this callback, the viewModel should be creates with ViewModelProviders and ViewModelProviders.Factory.