2

订阅某个事件类的类是否可以在不监听的情况下触发相同的事件类型?

例子:

Class A {

  EventBus bus = new EventBus();
  public A() {
     bus.register(this);
     bus.post ( new String("event!"));
  }

  @Subscribe public void consume(String event) {
     System.out.println("Got event: "+event);
  }

}
4

2 回答 2

4

您可以让您的事件类包含事件的源(发布事件的对象),然后忽略源为 的任何事件this。不过,我建议尝试让您的班级始终如一地处理事件,而不管来源如何。

于 2012-10-31T21:28:44.373 回答
0

不,没有。EventBus 如何首先确定事件的起源?

如果要忽略某些事件,则必须在事件对象本身中包含足够的信息以确定是否应忽略该事件。

于 2012-10-31T21:29:33.687 回答