接收活動
要接收事件,必須使用事件型別作為引數實現方法,並使用 @Subscribe
對其進行註釋。此外,你必須在 BusProvider
註冊/取消註冊物件的例項(請參閱傳送事件示例 ):
public class MyFragment extends Fragment {
private final static String TAG = "MyFragment";
...
@Override
public void onResume() {
super.onResume();
BusProvider.getInstance().register(this);
}
@Override
public void onPause() {
super.onPause();
BusProvider.getInstance().unregister(this);
}
@Subscribe
public void onDatabaseContentChanged(DatabaseContentChangedEvent event) {
Log.i(TAG, "onDatabaseContentChanged: "+event.message);
}
}
要點: 為了接收該事件,必須存在該類的例項。當你想要將結果從一個活動傳送到另一個活動時,通常不會出現這種情況。因此,請檢查事件匯流排的用例。