我有蜜蜂练习 Kotlin mvvm 并且在创建视图模型时出现错误,我看到很多堆栈溢出解决方案但找不到解决方案
<块引用>无法创建类的实例 - 视图模型
这是我的模型类
public class MainViewModel(application: Application,
) : AndroidViewModel(application) {
fun first(): LiveData<Boolean> {
return database
.locationDao()
.getLocationFlow()
.flowOn(Dispatchers.IO)
.map {
when {
it.isEmpty() -> {
true
}
else -> false
}
}.asLiveData()
}
}
主活动
<块引用>class MainActivityK : AppCompatActivity() {
lateinit var viewModel:MainViewModel
oncreate 方法
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
LocalUtil.setLocal(this)
mainBinding = ActivityMainKBinding.inflate(layoutInflater)
setContentView(mainBinding.root)
viewModel=ViewModelProvider(this).get(MainViewModel::class.java)
谢谢。
答案 0 :(得分:0)
您应该像这样获得 MainViewModel:
viewModel = ViewModelProvider(this, ViewModelProvider.AndroidViewModelFactory.getInstance(this.getApplication())).get(MainViewModel::class.java)
代替
viewModel=ViewModelProvider(this).get(MainViewModel::class.java)