Я не хочу добавлять наблюдателя в viewDidAppear и удалять в viewDidDisappear.Will не обслуживает мой случай.Где удалить наблюдателя для NSNotificationCenter в Objective-C
Я попытался сделать это в dealloc.
My root VC находится в navController. Затем второй VC помещается в navController, где я добавляюObserver для отправки уведомлений от rootVC. Проблема заключается в том, что когда я pop второй VC, его dealloc не вызывается немедленно или может быть не так, называемый alltogether.
- (void)viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(newMessagesNotification:) name:_newMessageNotificationListenerName object:nil];
}
- (void)newMessagesNotification:(NSNotification *)notification {
//some implementation
}
Почему бы не 'viewDidDisappear'? Если 'dealloc' не вызывается, то что-то держит ссылку на контроллер вида. – Paulw11
Не в видуDidDisappear, потому что я приношу еще один VC по модулю в secondVC. Один может поспорить, если поставить conditons в viewDidDisappear. Но я ищу конкретное яблоко, предлагающее способ удалить наблюдателя в VC –
Dealloc. Вам нужно разобраться, что держит ссылку – Paulw11