美文网首页Android开发专栏
viewmodel 不能实例化

viewmodel 不能实例化

作者: 桃先森_ | 来源:发表于2021-07-14 11:43 被阅读0次

报错如下

 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xxx.xxx/com.xxx.xxx.MainActivity}
: java.lang.RuntimeException: Cannot create an instance of class com.xxx.xxx.viewmodel.MainActivityViewModel
Caused by: java.lang.RuntimeException: 
Cannot create an instance of class com.xxx.xxx.viewmodel.MainActivityViewModel

最后解决:因为我的BaseViewModel是继承AndroidViewModel,需要Application类型的参数,所以图二中自己写的viewModel的入参类型必须是Application类型,不能写成自己继承实现的

image.png image.png
//实例化方法
ViewModelProvider(this,ViewModelProvider.AndroidViewModelFactory(application))
.get(MainActivityViewModel::class.java)

最后我用的库版本如下:

api 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.0'

相关文章

网友评论

    本文标题:viewmodel 不能实例化

    本文链接:https://www.haomeiwen.com/subject/dnhypltx.html