我是mvvm模式的新手,正在开发一项功能,在该功能中我必须进行服务调用并显示一个需要Activity Context的自定义ProgressDialog框。因此,我想知道是否可以通过按钮传递上下文触发服务调用还是一个坏主意。如果获取上下文有误,那么我应该如何实现它?
答案 0 :(得分:1)
假设您的意思是将上下文传递到viewModel方法中,这违反了最佳实践。
在一个过于简化的示例中,您的服务应返回LiveData,该数据应分配给viewModel中的LiveData实例。活动应观察viewModel的LiveData属性,并在观察到更改时更新UI。
这里有一些很好的文档,其中通过一些代码示例更详细地介绍了您的问题。