繁体   English   中英

如何在 Android 中存储和更新活动和片段之间的公共(临时)数据?

[英]How can I store and update a common (temporary) data between activities and fragments in Android?

我有一个包含多个片段和活动的应用程序。 我想知道是否可以在片段之间创建一个容器 class。 (我想用set保存,用get拉)

比如我会在FragmentA class中保存用户的性别信息,然后切换到FragmentB时会用到这个信息。 以同样的方式; 我将在 FragmentC class 中获取用户的年龄、身高、体重,然后我将在 FragmentE (Final) class 中访问这些信息并将其保存到 Room 数据库中。 我怎样才能做到这一点? 你能在Java中举个例子吗?

注意:我正在使用 Shared Preferencens,但我想寻找一种不同的方法,因为我不知道它是异步工作还是同步工作。 例如,我们可以用 ViewModel LiveData 创建这样一个容器,存储数据并从任何地方访问它吗?

在 Android 中共享 ViewModel 以与其他片段进行通信。 您可以将所有数据保存在此 SharedViewModel 中并在所有片段中对其进行访问。

请点击此链接https://www.geeksforgeeks.org/shared-viewmodel-in-android/

在这里他们使用了两个片段作为发送者和接收者,你可以为你的多个片段创建类似的

//SharedViewModel的Java实现

使用新架构组件 ViewModel 在片段之间共享数据

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM