我可以在ViewModel类中注入@RootContext吗?

时间:2019-10-10 15:55:37

标签: android android-databinding android-annotations android-mvvm

我创建了MVVM android应用,并且在ViewModel类中需要上下文。我知道ViewModel绝不能引用视图,生命周期或任何可能包含对活动上下文的引用的类。但... 是否还通过@RootContext注释注入Context?

我还想知道在ViewModel类中使用DataBinding时是否可以在onClick方法中使用视图对象的上下文。

1 个答案:

答案 0 :(得分:0)

因此您可以通过点击视图添加您的onclick参数。

<View
...
android:onClick="@{(v)-> viewModel.modelOnClick(v)}"
...
/>

ViewModel

class ViewModel{
   public void modelOnClick(View v){
   }
}

因此您可以在模型中单击视图,并可以使用其上下文