В моем случае это означает, что я не понял (в течение двух дней) очень простое требование обработчика (селектор, функция): я прекратил ... :( NSNotification *) уведомление ... в моем селекторе (функция).
В конце концов, это просто self.stupidMistake (или программирование устало при попытке понять что-то новое в iOs / xCode).Я прочитал документы в Apple, я прочитал много, много здесь, в stackoverflow, и прочитал все виды других страниц из результатов поиска и просто продолжал упускать из виду тот факт, что у меня было: в viewDidLoad:
[[NSNotificationCenter defaultCenter] addOberserver:self selector:@selector(myHandler:) name:@"UIApplicationWillResignActiveNotification" object:nil];
в.h (декларация) и .m (реальный код), которые я изобрел:
-(void)myHandler { ... }
Это сгенерировало нераспознанный селектор, отправленный экземпляру (выходные данные о сбоях и отладке) во время выполнения (нетошибки или предупреждения в xcode).Затем я потратил почти два целых дня, пытаясь выяснить ошибку, и ошибка была:
-(void)myHandler:(NSNotification*)notification { ... }
Надеюсь, это поможет кому-то еще застрявшему - это синтаксическая вещь (ваш селектор или обработчик или функция или все, что вы хотитечтобы вызвать его) должен принять (NSNotification *) «объект» в качестве параметра, используете ли вы его или нет;и xcode (4.2 w / iOs SDK 5.0) не генерирует ошибок или предупреждений об этой «ошибке».