跨活动边界更新可组合状态

问题描述 投票:0回答:0

我正在构建一个 android 应用程序,它有多个共享数据模型的活动。

数据模型由两层组成:

  • 第一个存储要使用的对象列表,以及将其保存到磁盘的方法。
  • 一个抽象第一个,以防止我再次删除我的数据。

抽象存储在应用程序类中,以允许所有活动访问它。 (这是访问一些保存到文件的 android api 所必需的)

然后我还有两个活动,将在列表中显示这些数据。

每个活动都有自己的视图模型,通过应用程序类访问这些抽象。

视图模型用于添加和读取这些更改。

当一项活动更改将项目添加到列表中时,我需要其他活动也更新他们的观点。

实现这一目标的最佳方法是什么?

到目前为止我已经尝试了几种方法

  • 使用回收站视图是因为适配器具有更新功能。但这不适用于 compose
  • 我试过在模型中设置可变状态并将其复制到每个活动。这不是它的用途。它也不起作用。
  • 我已经将实时数据添加到模型中,然后使用 MediatorLiveData 来传播它,这几乎可以通过 ui 来实现,但没有捕捉到这一点。
android mvvm android-jetpack-compose android-livedata
© www.soinside.com 2019 - 2024. All rights reserved.