【发布时间】:2018-11-21 14:37:32
【问题描述】:
尝试通过ViewModelProviers.of() 向我的活动提供ViewModel。
我的活动扩展了AppCompatActivity,但我仍然看到此错误:
错误:找不到合适的方法 of(StartActivity,StartViewModelFactory) 方法 ViewModelProviders.of(Fragment,Factory) 不适用(参数 不匹配; StartActivity 不能转换为 Fragment) 方法 ViewModelProviders.of(FragmentActivity,Factory) 不适用 (参数不匹配;StartActivity 无法转换为 片段活动)
Dagger 2 提供了依赖注入。下面是我的 Activity 类 StartActivity:
public class StartActivity extends AppCompatActivity {
@Inject
StartViewModelFactory startViewModelFactory;
StartModelView startModelView;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
AndroidInjection.inject(this);
super.onCreate(savedInstanceState);
startModelView = ViewModelProviders.of(this, startViewModelFactory).
get(StartViewModel.class);
}
如果我理解正确,如果它们扩展 AppCompatActivity 或 Fragment,您应该能够在 ViewModelProviders.of() 方法中发送活动。但我得到这个错误。任何帮助将不胜感激。
【问题讨论】:
标签: android mvvm viewmodel dagger-2