Помогите мне с ориентацией устройства - PullRequest
0 голосов
/ 29 декабря 2010

В моем приложении для iPad у меня есть 2 вида, первый вид может быть книжным или альбомным, но второй вид должен быть альбомным. Таким образом, я принудительно сделал второй вид, который будет отображаться в ландшафтном режиме, используя ниже

[[UIApplication sharedApplication] setStatusBarOrientation:
         UIInterfaceOrientationLandscapeRight];

Но в чем проблема после перехода ко второму виду, когда я проверяю ориентацию устройства, возвращается «Портрет». но второй вид всегда в ландшафтном режиме. Но почему я получаю неправильную ориентацию.

Спасибо за любую помощь

1 Ответ

2 голосов
/ 29 декабря 2010

Чтобы установить ориентацию, UIViewController или аналогичный имеет функцию, которую вы можете перезаписать.

В частности, посмотрите этот apple doc и прокрутите вниз до "shouldAutorotateToInterfaceOrientation:".

Код для включения ландшафтного режима должен выглядеть примерно так:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{
if ((interfaceOrientation==UIInterfaceOrientationPortrait)||(interfaceOrientation==UIInterfaceOrientationPortraitUpsideDown))
{
    return NO;
}
else if ((interfaceOrientation==UIInterfaceOrientationLandscapeLeft)||(interfaceOrientation==UIInterfaceOrientationLandscapeRight))
{
    return YES;
}
else {
    return YES;
}
}

Этот код должен содержаться в объекте контроллера представления и автоматически вызываться при запуске контроллера представления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...