Ответ 1
Я считаю, что панель истории развертывания автоматического макета должна быть всем, что нужно. Однако я обнаружил, что если я создам приложение под Xcode 8.3.3, UIScreen.mainScreen.bounds вернет 736 x 1024. Если я создам одно и то же приложение под Xcode 9 и бета-версию IOS 11 SDK, UIScreen.mainScreen.bounds вернется 834 x 1112.
UPDATE:
Как отмечали другие, когда приложение построено с Xcode 8.3.3/iOS 10.3 и работает на симуляторе iPad Pro 10.5, ключ UIRequiresFullScreen
в файле info.list определяет, масштабируется ли приложение до 768 x 1024. Если UIRequiresFullScreen
= YES, приложение масштабируется. Если UIRequiresFullScreen
= NO, приложение имеет полное разрешение (834 x 1112).
Однако, если приложение построено с помощью Xcode 9/iOS 11 beta 1, оно всегда работает с полным родным разрешением, независимо от настройки ключа UIRequiresFullScreen
. Некоторые разработчики считают, что это преднамеренное поведение, а не ошибка. Другие считают, что это просто артефакт запуска приложения iOS 10 под симулятором iOS 11. Мы, вероятно, не будем знать наверняка, пока разработчики не получат новое оборудование.