Intereting Posts
С новыми картами в iOS6 можно менять цвета слоев (парки, воды, здания) Массив вне диапазона с функцией проверки iOS – работа с несколькими активными видами Создать список временного интервала Swift ios 10.0.1 не воспроизводит видео в веб-просмотрах UISplitViewController, как всегда использовать UISplitViewControllerDisplayModePrimaryOverlay Спецификация Cocoapods для внешней библиотеки на http (совместное размещение) Прямой / локализационный контроллер SW Reveal View Как я могу гарантировать, что фотографии, загруженные через приложение iOS, не размыты? как добавить значения в NSMutableArray в текстовом представлении? Приложение iOS не работает в фоновом режиме на самом устройстве Добавление зависимостей сборки в iOS IOS. События удаленного управления не принимаются, когда модальный вид находится поверх основного вида Конечные точки Google с клиентом iOS: пользователь должен каждый раз входить в систему Профили профилей и сборки xcode

Настройка рамки просмотра для аппаратной клавиатуры iOS

Я выполнил инструкции, чтобы настроить мой просмотр с помощью клавиатуры iOS. https://developer.apple.com/library/ios/documentation/StringsTextFonts/Conceptual/TextAndWebiPhoneOS/KeyboardManagement/KeyboardManagement.html

Это не работает с аппаратной клавиатурой. Когда текстовое представление активно, клавиатура iOS не отображается, но код примера по-прежнему возвращает всю высоту клавиатуры. В моем случае на экране отображается только входной аксессуар.

Как я могу обнаружить этот случай и настроить свой вид только для просмотра входных аксессуаров?

Вы можете пересечь рамку клавиатуры с текущим окном, как в моем ответе здесь https://stackoverflow.com/a/36553555/1049134 .

По одной и той же проблеме. Похоже, что клавиатура iOS полностью создана и просто выведена из частичного просмотра, когда прикреплена аппаратная клавиатура. Поэтому размер клавиатуры правильный. Это просто не полностью показано.

Изучив уведомления, я решил это с вычислением видимой высоты клавиатуры самостоятельно. В моем примере я слушаю UIKeyboardWillShowNotification, UIKeyboardWillChangeFrameNotification и UIKeyboardWillHideNotification.

-(void)keyboardMessage:(NSNotification*)notification { NSDictionary *userInfo = notification.userInfo; CGFloat duration = [userInfo[@"UIKeyboardAnimationDurationUserInfoKey"] floatValue]; NSValue *value = userInfo[@"UIKeyboardFrameEndUserInfoKey"]; CGRect frame = [value CGRectValue]; [UIView animateWithDuration:duration animations:^{ self.lowerContraint.constant = self.view.frame.size.height - frame.origin.y;; [self.view needsUpdateConstraints]; [self.view layoutIfNeeded]; }]; }