Раньше я играл с простыми вещательными слушателями в действии, там можно сделать что-то вроде textView.setText («текст»); Но слушатель стал довольно большим, чтобы остаться внутри, и я отнес его к отдельному классу. Мне нравится AA, я просто хочу продолжать управлять представлениями из текущей активности моего BroadcastReceiver, что я был отделен. Но когда я делаю что-то вроде:Как я могу ввести экземпляр Activity в свой BroadcastReceiver с аннотацией Android?
@EReceiver
public class WarningActivityStateListener extends BroadcastReceiver {
@RootContext //or Bean
WarningActivity activity;
У меня есть ошибка:
Error:(25, 2) error: org.androidannotations.annotations.RootContext can only be used in a class annotated with @org.androidannotations.annotations.EBean.
Если я пытаюсь добавить @EBean выше, то у меня есть еще хуже:
Error:(27, 28) error: Something went wrong: Unexpected error in AndroidAnnotations 4.2.0!
You should check if there is already an issue about it on https://github.com/androidannotations/androidannotations/search?q=java.lang.ClassCastException&type=Issues
If none exists, please open a new one with the following content and tell us if you can reproduce it or not. Don't forget to give us as much information as you can (like parts of your code in failure).
спасибо. Но как взаимодействовать с пользовательским интерфейсом в этом случае? Прежде чем использовать AA, я использовал для создания конструктора с моей функцией WarningActivity. В действии он выглядит как «private BroadcastReceiver stateReceiver = new WarningActivityStateListener (this);», а в приемнике это было как «public WarningActivityStateListener (ActivityActivity activity)» { \t \t this.activity = activity; \t} '- поэтому я мог бы использовать Activity для изменения видов. Пожалуйста, сообщите, как заменить его AA. – Eugene
Я думаю, что IntentBuilder из приложения может помочь, но не знаю, как) – Eugene
@Eugene я обновил ответ. – WonderCsabo