Ориентация приложения изменится на альбомную, если я остановлю видео в альбомной ориентации

Я работаю над приложением, в которое встроил iframe на экран, чтобы показать миниатюру видео с vimeo.com. Все работает отлично, но когда я нажимаю, чтобы воспроизвести видео, он вызывает iPhone DEFAULT MOVIE PLAYER, а затем я поворачиваю свой iPhone в альбомную и видео воспроизведения в ландшафтном режиме. Но если видео заканчивается в ландшафтном режиме, то экран (на котором я добавил vimeo iframe) также поворачивается в ландшафтном режиме. Мне нужно исправить это только в портретном режиме, но видео должно воспроизводиться в портретном и альбомном режимах. Спасибо!

3 ответа

Решение

Когда мы воспроизводим видео таким образом, в iPhone запускается встроенный видеоплеер класса "mpinlinevideoviewcontroller". Мы не можем контролировать его функциональность. Итак, я установил

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

в контроллере представления, содержащем веб-представление, и теперь только этот экран приложения поддерживает всю ориентацию, и, таким образом, моя проблема была удалена (но не решена).

Один из возможных способов: когда ваш игрок перестал играть, просто вызовите эту функцию.

    -(void)setupOrientaion
    {

    [[UIDevice currentDevice] setOrientation:UIDeviceOrientationPortrait];  
    }

или опубликовать свой код здесь. это будет более полезно для анализа.

Поместите этот метод в ваш контроллер всех представлений, чтобы они всегда оставались в портретном режиме.

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
Другие вопросы по тегам