2013-08-15 3 views
1

Я использую NSNotificationCenter, слушатель подписаться на следующий коде:IOS- NSNotificationCenter- оповещать конкретный экземпляр

[[NSNotificationCenter defaultCenter] addObserver:self 
             selector:@selector(editRSSLAbel:) 
              name:@"editLabel" 
              object:nil]; 

И отправитель посылает уведомление с этой публикацией:

NSDictionary *dataDict = [NSDictionary dictionaryWithObject:@"http://www.nba.com" forKey:@"link"];            

[[NSNotificationCenter defaultCenter] postNotificationName:@"editLabel" object:self userInfo:dataDict]; 

Но, Я хочу уведомить специфический viewController экземпляр, и с приведенным выше механизмом я не имею возможности сделать это.

Любая идея будет замечательной!

Заранее благодарен!

ответ

1

Apple не поддерживает это напрямую, вы можете зарегистрироваться на это уведомление с помощью своего приложения, а не с вашим видом, os не знакомы с вашей внутренней реализацией, поэтому вы можете добавить словарь с именем контроллера и удерживать словарь имен-контроллеров для пересылки на нужный вид

1

Вы можете добавить новый ключ с тегом в словарь данных, который вы публикуете. Во всех контроллерах представления, которые получают уведомление, проверьте этот тег, чтобы увидеть, соответствует ли их «свой» тег, затем они могут обрабатывать данные или они могут просто вернуться из метода.

Смежные вопросы