Apple говорит:
UIModalPresentationFormSheet Ширина и высота представляемого представления меньше, чем у экрана, и представление центрируется на экране. Если устройство находится в горизонтальной ориентации, а клавиатура видна, положение вида корректируется вверх, чтобы вид оставался видимым. Все открытые области затемнены, чтобы пользователь не мог взаимодействовать с ними.
Но мой взгляд не перемещается вверх, когда клавиатура видна.Я в основном хочу представить текстовое представление модально над клавиатурой, чтобы пользователь мог ввести текст, а затем нажать «Отправить» (в навигационной кнопке на представленном представлении).
Мое представление представляет собой UISplitViewController
(не одинего детей), и я представляю UINavigationController
, который является главным контроллером вида сверху UITextView
.Вращение работает, но представленное представление перекрывается клавиатурой в обоих направлениях.
Я нашел некоторые вопросы , спрашивающие , как изменить размер представленногов этом случае, что хорошо, но я не хочу делать предположения, изменяя размеры вручную в презентаторе или в представленном представлении.Кажется, что он должен просто выбрать приличный (недокументированный) размер, просто переместить его автоматически, когда клавиатура показывает.
Мой код представления выглядит следующим образом:
MyViewController *vc = [[MyViewController alloc] init];
UINavigationController *nav = [[[UINavigationController alloc] initWithRootViewController:vc] autorelease];
nav.modalPresentationStyle = UIModalPresentationFormSheet;
[self.splitViewController presentModalViewController:nav animated:YES];