尝试在两个片段之间进行通信时 EventBus 不工作
EventBus not working when trying to communicate between two fragments
我在 viewpager 中设置了三个片段,就像滑动选项卡布局一样。我需要将字符串值从一个片段传递到另一个片段。
首先,我尝试像这里的答案建议的那样设置一个界面 How to pass data between fragments
这对我不起作用。这个想法是 Fragment A 告诉 Main Activity,然后 Main Activity 告诉 Fragment B。
所以我寻找不同的答案
http://android-er.blogspot.com/2012/06/communication-between-fragments-in.html
看起来很有前途但没有用,因为我无法在我的代码中使用相同的功能,因为我使用 google 的 slidingtablayout 而不是旧的 actionbar 设置了我的 viewpager。
现在我偶然发现了 EventBus。我真的认为这就是我的答案。正如下面两个答案所建议的那样,我将它添加到我的代码中。没有崩溃,但也没有任何效果。
我在 logcat 中找到这个:
D/Event: 没有订阅者注册事件 class tk.abestudying.atob.TextChangedEvent
D/Event: 没有订阅者注册事件 class de.greenrobot.event.NoSubscriberEvent
Communication between Fragments in ViewPager
这是我的代码:Link 已删除
请帮忙。几个小时以来,我一直在尝试解决方案,但我很困惑。谢谢。
编辑:我通过谨慎和重写代码让它工作。
您似乎缺少 @Subscribe
注释。根据 README
,订阅方法应如下所示:
@Subscribe
public void onEvent(AnyEventType event) {/* Do something */};
我在 viewpager 中设置了三个片段,就像滑动选项卡布局一样。我需要将字符串值从一个片段传递到另一个片段。
首先,我尝试像这里的答案建议的那样设置一个界面 How to pass data between fragments 这对我不起作用。这个想法是 Fragment A 告诉 Main Activity,然后 Main Activity 告诉 Fragment B。
所以我寻找不同的答案
http://android-er.blogspot.com/2012/06/communication-between-fragments-in.html
看起来很有前途但没有用,因为我无法在我的代码中使用相同的功能,因为我使用 google 的 slidingtablayout 而不是旧的 actionbar 设置了我的 viewpager。
现在我偶然发现了 EventBus。我真的认为这就是我的答案。正如下面两个答案所建议的那样,我将它添加到我的代码中。没有崩溃,但也没有任何效果。
我在 logcat 中找到这个:
D/Event: 没有订阅者注册事件 class tk.abestudying.atob.TextChangedEvent D/Event: 没有订阅者注册事件 class de.greenrobot.event.NoSubscriberEvent
Communication between Fragments in ViewPager
这是我的代码:Link 已删除
请帮忙。几个小时以来,我一直在尝试解决方案,但我很困惑。谢谢。
编辑:我通过谨慎和重写代码让它工作。
您似乎缺少 @Subscribe
注释。根据 README
,订阅方法应如下所示:
@Subscribe
public void onEvent(AnyEventType event) {/* Do something */};