NSNotification - проверьте, добавлен ли наблюдатель, прежде чем отправлять уведомление

Мой код падает на:

[[NSNotificationCenter defaultCenter] postNotificationName:kgotNotification object:dictionary];

Я предполагаю, что я публикую уведомление до добавления наблюдателя.

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getItems:) name:kgotNotification object:nil];

Есть ли способ проверить список активных наблюдателей перед публикацией уведомления?

1 ответ

Решение

Вы должны сделать это так:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(getItems:) name:kgotNotification object:nil];
[[NSNotificationCenter defaultCenter] postNotificationName:kgotNotification object:self userInfo:dictionary];

Тогда ваш метод getItems:

-(void)getItems:(NSNotification* )note
{
    NSLog(@"UserInfo: %@", note.userInfo);
}
Другие вопросы по тегам