【发布时间】:2018-12-01 16:24:32
【问题描述】:
ViewModel 是独立于活动/片段生命周期还是仅独立于它们的配置更改。它们何时将不复存在并调用后续的 onCleared() 方法。 viewModel 可以与其他 Activity 共享吗?
一种情况:
Activity1+viewModel1--->(rotation)--->Activity1+viewModel1
--->(launch Intent)--->Activity2+viewModel1
这种分享可行吗?这是一种好习惯吗?
此外,由于应用程序生命周期回调,onPause->onStop->onDestroy 对于两者都是相同的
1.activity旋转和
2.当一个Activity结束时,
ViewModel 如何在内部确定调用 onCleared 并最终结束其生命周期的正确时间。
调查结果:
ViewModel 在内部使用 holderFragment 来保存 Activity 的实例,并像片段一样使用 setRetainInstance 方法来说明配置更改。
Source: dive-inside-of-androids-viewmodel-architecture-components
【问题讨论】:
-
在您的情况下,ViewModel 是什么?
标签: android android-activity android-lifecycle android-viewmodel