奥托活动巴士:不同的活动课程

时间:2015-09-21 12:30:20

标签: android events event-bus otto

Otto如何处理不同的事件类?可以有不同的事件类吗?

只有听取特定事件类的侦听器才会收到通知吗?例如。下面的示例是否可以工作,只有A类中的监听器被通知?假设EventClassAEventClassB没有扩展相同的超类。

class A {
    @Subscribe
    public void handleEvent(EventClassA event)
    {
            //
    }
}

class B {
    @Subscribe
    public void handleEvent(EventClassB event)
    {
            //
    }
}

class C {
    public void postEvent() {
        bus.post(new EventClassA());
    }
}

1 个答案:

答案 0 :(得分:5)

  

是否可以使用不同的事件类?

  

只有听取特定事件类的监听器才会收到通知吗?

是。在您的示例中,将使用A调用订阅该总线的handleEvent()实例,而不会调用订阅该总线的B实例。