У меня есть несколько UITextFields в моем представлении (каждое внутри UITableViewCell). Когда клавиатура запускается из любого текстового поля, мне нужно сделать некоторые анимации, в основном, чтобы изменить фрейм UITableView. То же самое должно произойти, когда клавиатура скроется.
Я выполнил анимацию, так что это не проблема.
Теперь я использую NSNotificationCenter, чтобы поймать отображение / скрытие клавиатуры:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow) name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide) name:UIKeyboardWillHideNotification object:nil];
Проблема в когда клавиатура видна (используется текстовое поле), и я нажимаю внутри другого текстового поля. Обычно для этой штуки клавиатура не скрывается, но остается видимой.
Она отлично работает в iOS 4, но проблема возникает в 3.1.3 (это версия, которую я могу протестировать - возможно, любая версия ниже 3.2). В версиях старше 3.2 изменение фокуса с текстового поля непосредственно на другое текстовое поле приведет к срабатыванию UIKeyboardWillHideNotification и UIKeyboardWillShowNotification.
Кто-нибудь знает способ выполнить некоторую анимацию, когда клавиатура действительно будет отображаться / скрываться без NSNotificationCenter?
Или как я могу решить эту проблему с версиями ниже 3.2?
Спасибо.