活动/片段到活动/片段到活动/片段

时间:2013-09-18 12:39:56

标签: android android-fragments

寻找此问题的最佳做法解决方案。

Activity1包含带有有效产品微调器的Fragment1

Activity1包含一个操作栏菜单选项'products',它启动包含Fragment2的Activity2(列表片段)。

从Fragment2,您可以使用Activity3 / Fragment3添加/编辑产品。

在Fragment3中所做的更改我正在使用ActivityResult返回Fragment2,我知道我也可以通过接口实现相同的目标。

问题是:在Fragment1微调器中反映片段3中所做更改的最佳方法是什么?

我知道我可以在onResume()中重新加载Fragment1中的微调器值,但是如果我没有在Fragment3中做任何更改,那就没必要了。

1 个答案:

答案 0 :(得分:0)

我会使用Observer模式。使用类似

的接口实现接口
public void onInputChanged(yourStuff);

让你的第一个Fragment实现这个接口并将片段添加到监听器池。

并从发生变化的Activity中执行类似

的操作
EventManager.fireOnInPutChanged(yourData)

EventManager会监听您的听众注册的电话。

像这样,你不需要Activity forResult,你总是知道是否有什么变化。