Mos*_*afa 3 android android-viewmodel android-architecture-components
当我尝试通过在每次离开活动并返回时在开发人员选项中启用“不要保留活动”来模拟应用程序中的配置更改时,将ViewModel重新创建该活动!不ViewModels应该处理这些情况吗?
我可以通过保存活动状态来解决此问题,onSaveInstanceState但是使用a的意义ViewModel何在?
当我每次离开活动并返回时尝试通过在开发人员选项中启用“不要保留活动”来模拟应用程序中的配置更改时,都会重新创建ViewModel!
AFAIK,“不要保留活动”会在您离开活动时破坏活动。它不模拟配置更改。
在Android 8.1上,该设置特别指出:“用户离开后立即销毁每个活动”。
ViewModel不应该处理这些情况吗?
该ViewModel系统处理的配置变化。它不处理活动被破坏或进程被终止。
要模拟配置更改,请更改配置。例如,您可以旋转屏幕或更改语言环境。
我可以通过将活动状态保存在onSaveInstanceState中来解决此问题
可以进入已保存实例状态的所有内容Bundle都应进入已保存实例状态Bundle,因为它可以处理配置更改和进程终止。
使用ViewModel有什么意义?
ViewModel是否存在无法进入已保存实例状态的事物Bundle,例如:
Bitmap照片)LiveData生物(,RxJava Observable等)Socket在中输入Bundle)| 归档时间: |
|
| 查看次数: |
467 次 |
| 最近记录: |