现在我正在开发一款相册, 因为底部有 3 个导航按钮, 所以 activity 里面其实是 3 个 fragment 在切换展示视图, 这个时候我看到有些例子可以使用 viewModel 来管理界面视图, 这个时候因为我的相册是在 fragment 里面, 那 viewModel 我是该使用 mainActivity 的 viewModel, 还是 fragment 里面的 viewModel 呢? android 小白一个, 请赐教。
1
passon 2022-07-17 10:24:12 +08:00
相册在 fragment 里面,就用 fragment 的 viewmodel
|
2
xingda920813 2022-07-17 10:33:56 +08:00
如果需要在 3 个 Fragment 之间或者 Activity 的层级共享数据,则需要使用 Activity 作为 ViewStoreOwner 。否则可以使用 Fragment 。
|
3
jeesk OP |
4
kldd529 2022-07-19 18:04:06 +08:00
印象有个这玩意 androidx.fragment.app.activityViewModels
太久没用忘了用来干啥 |
6
zhanlanhuizhang 2022-07-25 09:47:13 +08:00
androidx.fragment.app.activityViewModels ,就是这样的。private val mobilePay by activityViewModels<MobilePayViewModel>()。这个对象的生命周期是跟 activity 保持一致。
|