textFieldDidBeginEditing вызывается преждевременно

У меня есть приложение, в котором я должен прокрутить экран в случае отображения клавиатуры. чтобы получить размер клавиатуры, ям регистрацияUIKeyboardWillShowNotification событие вроде так:

   [[NSNotificationCenter defaultCenter]
     addObserver:self
     selector:@selector(keyboardWillShow:)
     name:UIKeyboardWillShowNotification
     object:self.view.window]

Это работает, проблема в том, что он вызывается послеtextFieldDidBeginEditing назывался. Так что я могу'получить фактический размер клавиатуры, но только после того, как поле уже находится в режиме редактирования, что сводит на нет всю цель регистрации этого события. Я'я уверен, что ямы назвалиUIKeyboardWillShowNotification а неUIKeyboardDidShowNotificationхотя переключение этих двух значений дает одинаковые результаты: сначала был вызван метод делегата, а только затем метод уведомления. Есть идеи, как это изменить? В настоящее время я 'м жесткое кодирование размера, что очень плохая практика ...

Ответы на вопрос(5)

Ваш ответ на вопрос