【发布时间】:2020-05-16 20:12:20
【问题描述】:
我有三个片段 A、B 和 C。B 和 C 是 A 的子片段。如何让所有三个片段共享同一个视图模型。 来自this中号文章,这是我应该做的:
viewModel = activity?.run {
ViewModelProviders.of(this)[SharedViewModel::class.java]
} ?: throw Exception("Invalid Activity")
}
然而,这个是关于在两个片段和一个活动之间共享一个视图模型,因此在我的情况下它不能正常工作。
【问题讨论】:
-
如果 B 和 C 是孩子或 A,那么您可以定义一个 SharedViewModel 范围为 A 的生命周期,它可以与 B 和 C 共享。
-
我该怎么做?
标签: java android android-fragments kotlin android-viewmodel