gpt4 book ai didi

android - 何时在 Android 中使用多个 ViewModel 与共享 ViewModel?

转载 作者:行者123 更新时间:2023-12-05 06:03:55 24 4
gpt4 key购买 nike

最近,我偶然发现了共享 ViewModel 的概念,这让我很感兴趣,因为我似乎在为我的 fragment 编写相同的 ViewModel。

例如,我有一系列带有 RecyclerViews 的 fragment ,它们可以导航:

主列表 -> 子列表 -> 项目列表 -> 项目详细信息。每个 Fragment 都有自己的 ViewModel,但是列表是从同一个存储库中填充的,该存储库是从同一个数据库中提取的。唯一正在执行的操作是各种获取命令,用户不会对数据库进行任何修改。

在这种情况下,将我所有的存储库查询放在一个列表 ViewModel 中是否有意义?

来自google doc听起来这更像是在屏幕上有多个 fragment 的情况下共享数据。我可以看到如何使用它来将所选项目从一个 fragment 发送到下一个 fragment ,但我已经通过 Navigation safeArgs 很好地实现了这一点。

最佳答案

大概要看你是什么情况了。例如,如果您的应用程序具有复杂状态并且始终通过 safeArgs 从一个 fragment 推送到另一个 fragment ,则将状态保持在共享 View 模型中会很好,因为序列化/反序列化需要时间,并且您还必须控制实际状态在哪里。但是,通过跨多个 fragment View 模型共同共享,可以作为您的状态的单一真实来源。

关于android - 何时在 Android 中使用多个 ViewModel 与共享 ViewModel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66509818/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com