【发布时间】:2021-01-17 18:03:44
【问题描述】:
我正在为 2 个或更多片段之间的通信而苦苦挣扎
我的应用架构如下所示:
MainActivity (Menu Drawer)
----> MealsFragment
----> ProfileFragment
----> StatsFragment
----> SportFragment
----> ContactUsFragment
(通过点击菜单抽屉 main_container 被选中的 Fragment 替换)
之前,我有单个活动而不是片段,但我读过我需要将它们转换为片段以正确实现菜单抽屉(所以我做到了)。 问题是每个活动都有自己的子活动,它们使用 onActivityResult 与父母沟通。现在我不知道如何处理片段。
场景是这样的:
- 从 MainActivity 打开 MealsFragment(有效)
- 从 MealsFragment 打开 AddMealFragment(使用 MealsFragment 中的数据),填写表格,然后将用户提供的所有信息返回给 MealsFragment
- 将收到的数据用于进一步的操作
我已经看到推荐使用 settargetFragment() 和 getTargetFragment() 的帖子,但我不知道该怎么做,而且 - 更重要的是 - 我不知道之后如何接收数据
【问题讨论】:
-
如果你已经实现了导航图会更容易。你这样做了吗?如果是这样,我将分享解决方案。
-
我从未听说过 :( 我是否需要知道这一点才能使我的应用程序正常工作?
-
如果您使用导航图,您可以将数据从片段发送到片段作为参数。这将使工作更容易。总有另一种做事方式。
标签: java android android-fragments android-fragmentactivity