【问题标题】:How to create Instance of my ViewModel Class using ViewModelProvider如何使用 ViewModelProvider 创建我的 ViewModel 类的实例
【发布时间】:2019-12-20 14:17:22
【问题描述】:
我想知道如何使用 ViewModelProvider 类创建 ViewModel 类的实例。我知道如何使用 ViewModelProviders 创建 ViewModel 类的实例,但现在它已被弃用。所以我找不到使用 ViewModelProvider 创建 ViewModel 类实例的任何文档。
我找到了here 一种使用 ViewModelProviders 实例化 ViewModel 类的方法(但它不起作用)。这是代码
mWordViewModel = new ViewModelProvider(this).get(WordViewModel.class);
请有人帮助我。我被卡住了
【问题讨论】:
标签:
android
viewmodel
android-room
【解决方案1】:
如果你使用的是 androidx 包,你可以像这样初始化你的 ViewModel 类:
MyViewModel myViewModel = ViewModelProviders.of(MyActivity.this).get(MyViewModel.class);
不再维护 android.arch 架构组件包。它们已被相应的 androidx.* 包取代。
查看此link 了解更多详情。
【解决方案2】:
mWordViewModel = new ViewModelProvider(this).get(WordViewModel.class);
是正确的,它确实有效,你的问题可能在其他地方..