Гипотетический сценарий:
В моем методе viewDidLoad
я добавляю контроллер представления в качестве наблюдателя для настраиваемого уведомления (скажем, уведомления MyFooNotification
).Позже в процессе загрузки представления уведомление публикуется, и контроллер обрабатывает его.Когда я оставляю контроллер в поле зрения, я НЕ удаляю наблюдателя (намеренно) в viewDidUnload
.В следующий раз, когда открывается представление, наблюдатель снова добавляется, но теперь, когда наблюдаемое уведомление публикуется - я получаю EXC_BAD_ACCESS
.
Может кто-нибудь объяснить, почему это происходит.знаю, что я должен удалить его в viewDidUnload
Мне просто интересно узнать подробности нижнего уровня.