Как мне запустить приложение для iPhone в альбомном режиме? - PullRequest
1 голос
/ 10 февраля 2012

Мое приложение исправлено в ландшафтном режиме, но во время viewDidLoad () и даже viewWillAppear () все равно возвращаются следующие портретные размеры:

self.view.bounds.size.width = 320.00
self.view.bounds.size.height = 480.00

Только в viewDidAppear () будут получены фактические размеры ландшафта.

self.view.bounds.size.width = 480.00
self.view.bounds.size.height = 320.00

Я нахожу это странным. Почему это происходит? и как я могу это исправить?

1 Ответ

3 голосов
/ 10 февраля 2012

В файле info.plist вашего приложения укажите ключ:

 UISupportedInterfaceOrientations

со значениями для ландшафта влево и вправо:

enter image description here

EDIT

Необработанный код plist должен выглядеть следующим образом:

    <key>UISupportedInterfaceOrientations</key>
    <array>
        <string>UIInterfaceOrientationLandscapeLeft</string>
        <string>UIInterfaceOrientationLandscapeRight</string>
    </array>

Редактировать 2

Вам также нужен этот ключ, который определяет начальную ориентацию строки состояния:

 <key>UIInterfaceOrientation</key>
 <string>UIInterfaceOrientationLandscapeRight</string>

Далее, вам необходимо убедиться, что ALL ваших контроллеров представления (tabbar, navbar, обычные view-контроллеры) реализуют

 shouldAutorotateToInterfaceOrientation

и вернуть значение Пейзаж (влево или вправо).

Вот статья Apple на эту тему:

Техническое примечание TN2244

И, наконец, вот еще несколько SO сообщений на эту тему: пост 1 и пост 2.

...