【发布时间】:2017-07-31 09:28:53
【问题描述】:
我在我的应用程序中使用导航抽屉。我有一个 MainActivity,其余的是 Fragments。所以问题是假设我有三个片段,如 A、B、C。
现在在 A 中,我有一个按钮,我正在从 A>B 发送数据。
例如 putSring("来自 A 的数据","来自 A 的数据");
现在在 B 我从 A 接收数据。
我在 B 中有一个按钮,我正在从 B>C 发送数据。
例如 putSring("来自 B 的数据","来自 B 的数据");
现在在 C 中,我从 B 接收数据。
然后,我在 C 中有一个 Button,并从 C>B 发送数据。
例如 putSring("来自 C 的数据","来自 C 的数据");
所以,似乎在 B 中,我从两个不同的片段中获取数据。我尝试了所有使用活动,它与 startActivityforresult 配合得很好。但是当一切都是碎片时,我该如何管理。
【问题讨论】:
-
当你从 A->B 发送数据时,你必须维护我来自 A 的 BOOLEAN 和相同的情况 C->A ,你必须使用相同的 BOOLEAN 来指定你来自c并向B发送数据
-
但我将如何检查?它是从哪个片段传递过来的
-
当你从 A->B 发送数据时,使用 BOOLEAN 值 TRUE .....当你从 C->A 发送数据时,使用 BOOLEAN 值 FALSE
-
但是当你从 A>B 传递数据时,应用程序会因 NPE 而崩溃。理由是它不会误认为 C>B ..明白了吗?
-
如果一次只有一个片段处于活动状态,似乎在 B 中我从两个不同的片段中获取数据 是不可能的。此外,如果您在
Fragment对象上使用setArguments(),则不必担心。
标签: android android-fragments fragment fragmentmanager