【发布时间】:2020-01-18 22:24:22
【问题描述】:
documentation 声明如下:
如果 ViewModel 需要 Application 上下文,例如查找系统服务,它可以扩展 AndroidViewModel 类,并在构造函数中有一个接收应用程序的构造函数,因为 Application 类扩展了上下文。
代码示例:
class MainViewModel(application: Application) : AndroidViewModel(application) {
...
}
两个问题:
- 如果我仍然需要将
Application传递给 ViewModel 的 ctor,AndroidViewModel 如何帮助我? - 再一次,如果我需要传递
Application,为什么我需要AndroidViewModel?我可以使用 ViewModel 并将其传递给Application。
【问题讨论】:
-
"如果我仍然需要将 Application 传递给 ViewModel 的 ctor,AndroidViewModel 如何帮助我?" -- 你没有将
Application传递给ViewModel构造函数,因为你没有调用ViewModel构造函数。工厂是。
标签: android android-architecture-components