从 mvvm 中的按钮视图中获取 Activity 上下文是否正确

Is it correct to get Activity context from view like button in mvvm

我是 mvvm 模式的新手,我正在开发一项功能,我必须执行服务调用并显示需要 Activity Context.So 的自定义 ProgressDialog 框我想知道是否我可以从触发服务调用的按钮传递上​​下文,或者这是一个错误 idea.If 获取上下文是错误的,那么我应该如何实现它?

假设您的意思是将上下文传递给 viewModel 方法,这违反了最佳实践。

在一个过于简化的示例中,您的服务应该 return LiveData,它应该分配给您的 viewModel 中的 LiveData 实例。 Activity 应该观察 viewModel 的 LiveData 属性 并在观察到变化时更新 UI。

这里有一些很好的文档,通过一些代码示例更详细地解决了您的问题。

https://developer.android.com/jetpack/docs/guide