【发布时间】:2023-03-23 10:18:01
【问题描述】:
我最近开始研究 Android 架构组件。我发现 MVVM 架构非常方便,我想掌握它。在设计我的应用程序时,我应该对不同的活动/片段使用多个 ViewModel,还是应该对所有活动/片段使用单个 ViewModel?这两种方法的优缺点是什么?谢谢你。
【问题讨论】:
标签: android mvvm viewmodel android-livedata android-architecture-components
我最近开始研究 Android 架构组件。我发现 MVVM 架构非常方便,我想掌握它。在设计我的应用程序时,我应该对不同的活动/片段使用多个 ViewModel,还是应该对所有活动/片段使用单个 ViewModel?这两种方法的优缺点是什么?谢谢你。
【问题讨论】:
标签: android mvvm viewmodel android-livedata android-architecture-components
这取决于你需要保持的状态。如果您的 Fragment 彼此隔离,请随意使用每个 Fragment 的 ViewModel。如果您需要共享状态(我所说的状态是指 LiveData),那么每个活动都有一个 ViewModel 是合理的。但一般来说,类越小越好。
所以我建议每个片段都有一个 ViewModel,除非您需要共享 LiveData。
【讨论】: