Я пытаюсь передать событие из фрагмента в диалог с помощью otto. К сожалению, к моменту создания диалога событие уже запущено, и метод @Subscribe в моем диалоговом окне и данные, которые были отправлены, передаются.Использование Отто для двунаправленной связи с диалогом
Данные, которые я пытаюсь передать, - это объект и индекс (лучший случай) или строка (худший случай) из списка/ArrayList.
Я знаю, что у них есть метод @Produce; но я не понимаю, как метод, который не принимает аргументов, в любом случае или как я могу заставить его работать.
Вот пример они обеспечивают
@Produce public AnswerAvailableEvent produceAnswer() {
// Assuming 'lastAnswer' exists.
return new AnswerAvailableEvent(this.lastAnswer);
}
Для моего недавно созданного диалога this.lastAnswer; не будет, он не может - это то, что я передаю. Так как мне обойти это?
Боковое примечание: Я думаю, что автобус событий в его текущей форме немного переборчив, так как он только общается с моим диалогом. Позже я надеюсь использовать шину событий в большей диалогово-цифровой связи.
lastAnswer никогда не будет инициализирован в моем сценарии. Я передаю данные из моего фрагмента в диалог, поэтому нет (последний раз). Хорошие мысли, хотя! Я буду помнить об этом в следующий раз, когда я погружусь в андроид. –
Извините @ xphill64x, может быть, я не понимаю, если вам не нужно проходить в диалог «lastTime», создайте событие, не передавая его в конструкторе. – molokoka