EventBus не работает при попытке установить связь между двумя фрагментами
У меня есть три фрагмента в окне просмотра, настроенных как раскладка со скользящей вкладкой. Мне нужно передать строковое значение из одного фрагмента в другой.
Во-первых, я попытался настроить интерфейс, например, ответы здесь предлагают Как передать данные между фрагментами, что не работает для меня. Идея состоит в том, что Фрагмент А рассказывает об Основном действии, а затем Основное задание сообщает Фрагменте Б.
Поэтому я искал разные ответы
http://android-er.blogspot.com/2012/06/communication-between-fragments-in.html
Выглядело многообещающе, но не сработало, потому что я не мог использовать те же функции с моим кодом, так как я настроил свой просмотрщик страниц с помощью Google tabg SlidingTlayout вместо старой панели действий.
Теперь я наткнулся на EventBus. И я действительно думаю, что это мой ответ. Я добавил его в свой код, как предлагают оба ответа ниже. Ничего не падает, но ничего не работает.
Я нахожу это в logcat:
D / Event: нет подписчиков, зарегистрированных для класса события tk.abestudying.atob.TextChangedEvent D/Event: нет подписчиков, зарегистрированных для класса события de.greenrobot.event.NoSubscriberEvent
Связь между фрагментами в ViewPager
Связь между вкладками SlidingTabLayout
Вот мой код: ссылка удалена
Пожалуйста помоги. Я часами пробовал решения, но я в тупике. Спасибо.
Редактировать: я получил это работать, будучи осторожным и переписывая код.
1 ответ
Похоже, вам не хватает @Subscribe
аннотаций. Согласно README
метод подписки должен выглядеть так:
@Subscribe
public void onEvent(AnyEventType event) {/* Do something */};