РЕДАКТИРОВАТЬ: Я неправильно прочитал ваш вопрос.Это позволит вам запустить приложение в определенных направлениях.Просто понял, что вы пытаетесь выяснить ориентацию при запуске.
Существует способ проверить ориентацию строки состояния на UIApplication
:
[[UIApplication sharedApplication] statusBarOrientation];
Оригинальный ответ
Попробуйте установить в приложении plist допустимые для устройства ориентации устройства:
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
Это будет означать, что ваше приложение поддерживает Portrait (кнопка home внизу), альбомная ориентация слеваи вправо.
Затем в ваших UIViewControllers вам потребуется переопределить метод shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)
для возврата YES, когда приложение должно повернуться:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight;
}
Это сообщит UIViewControllerдля автоматического поворота, если устройство находится в одной из ваших поддерживаемых ориентаций.Если вы также хотели поддержать перевернутую ориентацию (портрет с кнопкой «Домой» сверху), добавьте это в свой список и просто верните ДА из этого метода.
Дайте нам знать, как это работает.