Если вы всегда хотите, чтобы ваше приложение запускалось в альбомной ориентации, вы должны удалить любые книжные ориентации из «Поддерживаемых ориентаций интерфейса» (в plist или в настройках проекта> Сводка (в Xcode 4) или в настройках проекта> Общие (в Xcode 5).
Если вы хотите, чтобы Portrait был доступен позже (после запуска):
В iOS 5 (и ниже): внедрите - (BOOL)shouldAutorotateToInterfaceOrientation:
в вашем контроллере корневого представления для возврата YES
для любой ориентации, которую вы хотите разрешить (в данном случае UIInterfaceOrientationPortrait
, UIInterfaceOrientationLandscapeLeft
и UIInterfaceOrientationLandscapeRight
. Это заменит любые ориентации интерфейса, которые вы запретили в «Поддерживаемых ориентациях интерфейса»
В iOS 6 (и более поздних версиях): В делегате приложения внедрите - (NSUInteger)application:supportedInterfaceOrientationsForWindow:
и верните UIInterfaceOrientationMask
для ориентаций, которые мы хотим разрешить после запуска (в данном случае UIInterfaceOrientationMaskAllButUpsideDown
). Затем в контроллере корневого представления, внедрите - (NSUInteger)supportedInterfaceOrientations
, возвращая все ориентации, которые должны быть доступны в текущем состоянии приложения.
Если вам нужен пример кода или более подробная информация, вы можете проверить мой пост на эту тему.