首页 > 解决方案 > 我是否应该在 Fragments 中使用两个 ViewModel(一个 SharedViewModel 范围为 NavGraphs,另一个 ActivityViewModel 范围为 Activity)

问题描述

我正在开发一个使用多个Fragments 和单个 Activity的项目。一些具有相似行为的 Fragment 具有Shared ViewModel scoped to individual Nested NavGraphs. 但是在活动开始时,所有 Fragment 都需要检查是否one common property(internet connection livedata)存在于Activity ViewModel中。现在自从应用程序启动以来,所有片段都需要检查Internet Connection LiveData其中存在哪些片段ActivityViewModel,我应该如何将LiveDataActivityViewModel 实例传递给各个片段?我尝试使用 aSingle ViewModel scoped to Activity for all fragments但这样做会使ViewModel变得复杂。我应该如何解决问题?. 我应该得到instance of ActivityViewModel每个片段的内部吗?但是这样做会导致我的片段有two Viewmodels- one from Activty another from Navgraph. 我应该怎么办?推荐的方法是什么?

任何帮助,将不胜感激。

提前致谢

标签: androidandroid-fragmentsandroid-viewmodel

解决方案


推荐阅读