2016-05-09 2 views
0

Мое универсальное приложение позволяет некоторым контроллерам представлений находиться в ландшафте, но не в первом экране. Изображение запуска выглядит как первый экран; он должен быть в портрете при работе на iPhone. На iPad все ориентации приемлемы. Как это можно решить?Как заставить запускать портрет для универсального приложения?

override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask { 

не может использоваться для контроллера просмотра для раскадровки.

+0

Просто поместите изображение запуска только в портретном режиме и обработайте остальное в поддерживаемом интерфейсе. –

ответ

1

Добавить ключ «Начальная ориентация интерфейса» к вашим проектам plist. Установите значение «Портрет (нижняя кнопка дома)» или другое желаемое значение. Перейдите на вкладку «Общие» вашего файла проекта и снимите ориентацию устройства. В контроллерах зрения переопределения supportedInterfaceOrientations


Это был отличный старт! Вот что еще нужно ... - Jessy

Initial interface orientation является prettified имя строки ключа UIInterfaceOrientation. Документация Creating and Editing an Information Property List File говорит нам, что мы должны были бы запись iPhone конкретные, например:

<key>UIInterfaceOrientation~iphone</key> 
<string>UIInterfaceOrientationPortrait</string>, 

Потому что это по умолчанию, указав, что не нужно. Тем не менее, необходимо указать все четыре значения для ключа Supported interface orientations (iPad), который является префизированной версией UISupportedInterfaceOrientations~ipad. UIInterfaceOrientation is ignored if the UISupportedInterfaceOrientations key is present, поэтому должна присутствовать часть ~ipad.

+0

Вы попробовали? Потому что это действительно относится только к iPad и iPhone 6 плюс, это те устройства, которые я тестировал. – beyowulf

+0

Мое приложение работает только на iPhone, и я хочу, чтобы он запускался в портрете. Я попытался настроить UIInterfaceOrientation на портрет и UISupportedInterfaceOrientations ~ iphone для всех трех (портретный, альбомный, правый справа). Но он по-прежнему запускается в ландшафте на iPhone 7 Plus, если домашний экран был в ландшафте до того, как приложение было запущено. Как это исправить? Благодарю. –