У меня есть одно текстовое поле и текстовое представление в представлении. Я хочу показать панель инструментов на клавиатуре при редактировании текста в textView, но я не хочу показывать панель инструментов при редактировании textField. Я использую ниже код:Невозможно вызвать UIKeyboardNotifications
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
[super viewWillAppear:animated];
NSNotificationCenter *nc = [NSNotificationCenter defaultCenter];
[nc addObserver:self selector:@selector(keyboardWillShow:)
name: UIKeyboardWillShowNotification object:nil];
[nc addObserver:self selector:@selector(keyboardWillHide:)
name: UIKeyboardWillHideNotification object:nil];
return YES;
}
и
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillShowNotification
object:nil];
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillHideNotification
object:nil];
return YES;
}
Моя проблема когда пользователь пытается изменить текстовое поле и сразу начать редактирование TextView мы не можем показать тулбар для этого тогда? Как показать панель инструментов на клавиатуре для такой ситуации?
Кстати, почему вы вызываете метод 'viewWillAppear' в методе' textViewShouldBeginEditing'? – limon