И результат

я есть приложение для обмена сообщениями, которое имеет типичный дизайн пользовательского интерфейса текстового поля в нижней части полноэкранного просмотра таблицы. Я устанавливаю это текстовое поле для отображения контроллераinputAccessoryView и звонитViewController.becomeFirstResponder() для того, чтобы получить поле для отображения в нижней части экрана.

Я понимаю, что это рекомендуемый Apple способ реализации этой структуры пользовательского интерфейса, и он отлично работает на «классических» устройствах, однако, когда я тестирую на симуляторе iPhone X, я замечаю, что при использовании этого подхода текстовое поле не учитывает новые «безопасные области» , Текстовое поле отображается в самом низу экрана под индикатором главного экрана.

Я просмотрел документы HIG, но не нашел ничего полезного в отношенииinputAccessoryView на контроллере представления.

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

Кто-нибудь нашел хорошую документацию по этому вопросу или знает альтернативный подход, который хорошо работает на iPhone X?

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

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