使用ViewModel在片段及其父活动之间共享数据

时间:2017-09-11 10:05:50

标签: android viewmodel android-architecture-components

我想问一下,在ViewModelFragment之间分享相同的Activity是否正确。我有UserDetailActivityUserDetailFragment。我可以使用相同的ViewModelUserDetailActivityUserDetailFragment中显示用户的详细数据,还是有更好的方法。

2 个答案:

答案 0 :(得分:0)

是的,您可以将ViewModal对象从Activity传递给Fragment,反之亦然,方法是将Parcelable实现为ViewModal类,并且可以使用片段setArguments()方法共享对象。

答案 1 :(得分:0)

我没有使用 MVVM ,但我认为与 MVP 相同,我使用相同的 Presenter(在您的情况下为ViewModel)我的活动及其子片段。这是因为片段实际上是活动的片段。可能存在一些特殊情况,您确实要将片段活动的viewModel分开,但大多数情况下,它们共享。关于初始化,不要直接传递你的viewmodel,你可以使用dagger并注入它。