I need to pass value when the view model is created (userData), so I need to create a view model factory
here is my viewModel, I need application
and userData
to init this ScoreViewModel
class ScoreViewModel(application: Application, userData: UserKM) : AndroidViewModel(application) {
}
but now I am confused how to pass application
when I create viewModel factory
class ScoreViewModelFactory(private val userData: UserKM) : ViewModelProvider.Factory {
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
if (modelClass.isAssignableFrom(ScoreViewModel::class.java)) {
return ScoreViewModel(userData = userData,application = ?????? ) as T
}
throw IllegalArgumentException("Unknown ViewModel class")
}
}
what should I do ?