У меня есть деятельность для регистрации пользователей. В какой-то момент в этой деятельности у меня есть фрагмент с регистрационной формой. Когда пользователь нажимает кнопку REGISTER У меня есть событие переданную с шиной событий, как этотАктивность уничтожена, не может отправить событие из содержащегося фрагмента
В RegistrationFragment (содержится в RegistrationActivity)
EventBus.getDefault().post(new RegistrationSuccessfulEvent());
В RegistrationActivity
public void onEvent(RegistrationSuccessfulEvent event) {
startActivity(new Intent(this, MainActivity.class));
}
Я получаю это исключение
Could not dispatch event: class com.myapp.RegistrationSuccessfulEvent to subscribing class class com.myapp.RegistrationActivity ...
java.lang.IllegalStateException: Activity has been destroyed
Почему я нарушаю деятельность? Возможно ли, что если активность А содержит фрагмент F, то действие прекращается, а F все еще работает и работает? Я думал, что A жив, пока F жив, или какой-либо другой содержащийся фрагмент находится в рабочем состоянии. Я довольно смущен жизненным циклом связи активности и фрагмента.
Я также сталкиваюсь с той же проблемой. Но я не уверен, что создает проблему. У меня есть фрагмент, фрагмент панели инструментов, внутри основного действия, откуда я отправляю событие, некоторое время, когда я запускаю и перезапускаю приложение, он выходит из строя с указанным выше сообщением. – ahmadalibaloch