Есть ли способ динамически запустить приложение iOS с начальной ориентацией?

Я знаю, что мы можем определить основную ориентацию в приложениях для iOS. Однако я не мог придумать способ сделать то, что хочу: если устройство находится в ландшафтном режиме, запустите все приложение в ландшафтном режиме. Если нет, начните с портретной ориентации.

В настоящее время, если я запускаю приложение после поворота устройства в альбомный режим, оно открывается в портретном режиме, а не вращается. Есть ли способ запустить все приложение в альбомной ориентации? (Уже повернутое окно)


person frankish    schedule 16.11.2013    source источник
comment
Это вопрос, который меня тоже интересует. У меня есть приложение, которое я пишу, и я хочу сделать его универсальным. Если вы запустите его на iPhone, я хочу, чтобы он был альбомным и кое-что скрыл. На iPad я хочу, чтобы он был портретным и все показывал. Я хочу, чтобы это было динамично, и готов написать код для его поддержки. Я просто не знаю, где живут крючки.   -  person Chris Marshall    schedule 07.01.2015


Ответы (2)


Да; просто укажите, что вы поддерживаете все ориентации устройств в своем info.plist. Вы можете увидеть это в Xcode в настройках вашего проекта в разделе «Общие» в Xcode 5.

person Jesse Rusak    schedule 16.11.2013
comment
Я уже настроил его для поддержки всех ориентаций, однако он работает (вращается) только после запуска приложения в портретном режиме, как сказал @juniperi. Как вы написали «Да», я все еще надеюсь, что есть какой-то выход. : | - person frankish; 17.11.2013
comment
Возможно, я вас не понимаю; Вы имеете в виду, что пользователь видит, что приложение открывается в портретной ориентации, а затем вращается? Если вы настроите свой информационный лист, а также контроллер корневого представления для поддержки всех ориентаций, система должна повернуться в альбомную, как указывает juniperi, прежде чем пользователь что-либо увидит. (Вы пытаетесь избежать этого невидимого поворота? Если да, то почему?) - person Jesse Rusak; 17.11.2013

Цитата из Apple документация UIViewController:

Примечание. Во время запуска приложения всегда должны настраивать свой интерфейс в портретной ориентации. После возврата из метода application: didFinishLaunchingWithOptions: приложение использует описанный выше механизм поворота контроллера представления для поворота представлений в соответствующая ориентация перед показом окна.

person juniperi    schedule 16.11.2013
comment
Я больше не думаю, что это так. В iOS7 / 8, если вы удалите портретный и перевернутый режимы, приложение запустится в альбомном режиме, и вам нужно будет выбрать изображение для запуска соответственно. - person Chris Marshall; 07.01.2015