2

我在活动上使用EventBus并覆盖一个事件 ABC。现在我从多个类(EventBus.getDefault().post(new ABC())等)调用该事件,并且我的活动类得到回调。所以我的问题是:有什么方法可以识别在我的活动课上调用该事件的调用者。

4

2 回答 2

0

我建议添加一个接收标签的构造函数

public ABC(int tag) {}

然后在您的活动中,您可以像这样进行:

@Subscribe()
public void onEvent(ABC event) {
    switch(event.getTag()) {
        case MyService.TAG: 
            //process data from your service
            break;
        case MyFragment.TAG: 
            //process data from your fragment
            break;
    }
}
于 2017-06-01T14:00:21.897 回答
0

放入一些东西ABC来告诉您事件的来源,例如通过构造函数参数。

于 2017-06-01T13:58:01.487 回答