«нераспознанный селектор отправлен в экземпляр» при появлении клавиатуры - PullRequest
2 голосов
/ 25 сентября 2011

Когда я щелкаю текстовое поле на экране моего приложения и появляется клавиатура, отладчик xcode показывает эту ошибку:

[mainViewController keyboardWasShown]: unrecognized selector sent to instance 0x5867ac0

В методе viewDidLoad mainViewController я вызываю метод registerForKeyboardNotifications, как этот:

[self registerForKeyboardNotifications];

Вот его реализация (в mainViewController.m):

- (void)registerForKeyboardNotifications
{
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWasShown:) name:UIKeyboardDidShowNotification object:nil];
   [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillBeHidden:) name:UIKeyboardWillHideNotification object:nil];
}

// Called when the UIKeyboardDidShowNotification is sent.
- (void)keyboardWasShown:(NSNotification*)aNotification
{

}

// Called when the UIKeyboardWillHideNotification is sent
- (void)keyboardWillBeHidden:(NSNotification*)aNotification
{

}

Есть идеи, что может быть не так?

1 Ответ

4 голосов
/ 26 сентября 2011

Убедитесь, что в конце селектора уведомлений стоит двоеточие;это важно, keyboardWasShown и keyboardWasShown: - это разные селекторы.

...