Отображать вид в альбомной ориентации - PullRequest
0 голосов
/ 16 января 2012

Я показываю видео, и мне нужно повернуть вид, чтобы он отображался в альбомной ориентации.Я написал следующий код, где он делает именно то, что я хочу.Проблема заключается в том, что, когда я нажимаю кнопку «Назад» (строка, на которой отображается название носителя и время), остается «Пейзаж» (для представлений, которые должны быть портретными).Как мне исправить это?

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return (interfaceOrientation == UIInterfaceOrientationLandscapeRight);
}

Ответы [ 2 ]

0 голосов
/ 16 января 2012

Вы определили:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

для контроллера, вид которого должен быть портретным? (тот, к которому вы вернетесь после закрытия видео)

0 голосов
/ 16 января 2012

Теперь просто добавьте в свои рамки новое местоположение, например:

-(void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration{
    if(self.interfaceOrientation == UIInterfaceOrientationLandscapeLeft ||
       self.interfaceOrientation == UIInterfaceOrientationLandscapeRight){
        video1.frame = CGRectMake(50, 650, 150, 30);
        video2.frame = CGRectMake(350, 650, 150, 30);
    } else {
        video1.frame = CGRectMake(10, 10, 150, 30);
        video2.frame = CGRectMake(610, 10, 150, 30);
    }
}

и оставьте это так, как было

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return YES;
}

может вызвать ориентацию в методе, который вы хотите изменить. Так оно и знает ..

пример:

-(void)videoDisplayMothod {
    //video code
    toInterfaceOrientation = UIInterfaceOrientationLandscapeLeft;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...