首页 > 解决方案 > 如何在Android中更新两个相同的片段

问题描述

我正在使用 Android 中的 Fragments。我有两个相同的片段 FragA 和 FragB。因为它们是相同的:我需要一个方法来说明如果我在 FragA 上并且 FragA 中的 textView 更改或更新相同的 textView 应该在 FragB 中更改/更新。任何人都可以帮助我创建一个方法,该方法从 FragA 获取关于特定视图发生更改的数据并将其传递给 FragB 以更新其视图。

我曾尝试使用接口和 ViewModel 与片段进行通信,但是当假设其中一个片段发生变化时,我似乎无法弄清楚如何更新两个相同的片段。

标签: android

解决方案


如今,这实际上是一个容易解决的问题。有了 aViewModel我们就可以轻松实现这一点。

我们可以建造一个ViewModel我们MutableLiveData可以居住的地方。

我们的两个(或更多)片段可以观察LiveData事件并同时更新。

我可以发布一些代码,但我真的认为这个 CodeLabs 正是您正在寻找的,并且可以让您在几分钟内快速上手。

Android 生命周期感知组件 Codelab


推荐阅读