Я использую Отто и Кинжал. Некоторые из моих событий получаются несколько раз только на одном посту.Отто автобус событий, принимающий несколько событий на одном посту
На мой взгляд, которая отправляет событие:
@Inject Bus mBus;
В конструкторе:
((MyApplication) mContext.getApplicationContext()).inject(this);
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View view) {
Log.d(TAG, "Sending SearchResultClickedEvent.");
mBus.post(new SearchResultClickedEvent(mModel.getPlaceId()));
}
});
В суперкласса для моей подписывающего деятельности:
@Inject protected Bus mBus;
В onCreate()
:
((HarryApplication) getApplicationContext()).inject(this);
В подписывающей деятельности:
@Subscribe
public void on(SearchResultsRecyclerViewHolder.SearchResultClickedEvent event) {
Log.d(TAG, "SearchResultClickedEvent received.");
}
Бревно после одного клика:
03-26 12:59:51.496 24613-24613/D/SearchResultView﹕ Sending SearchResultClickedEvent.
03-26 12:59:51.496 24613-24613/D/Subscriber﹕SearchResultClickedEvent received.
03-26 12:59:51.497 24613-24613/D/Subscriber﹕SearchResultClickedEvent received.
03-26 12:59:51.499 24613-24613/D/Subscriber﹕SearchResultClickedEvent received.
есть ли шанс у вас есть ваша деятельность просочилась и у вас есть несколько приемников зарегистрированы. Пожалуйста, покажите нам, как вы подписываетесь и отписываетесь от автобуса? –
Ах, спасибо! Я не знал, что нам нужно было отменить регистрацию. Я обновил свой ответ. – clocksmith