Воспроизведение видео в полноэкранном режиме в iPhone (iPhone) - PullRequest
1 голос
/ 19 января 2011

У меня есть приложение, которое построено как иерархия viewControllers.

Один из контроллеров представления для «видео раздела» приложения.

Приложение предназначено только для портретной ориентации, однако я хочу, чтобы видео воспроизводилось в полноэкранном режиме в альбомной ориентации (так же, как приложение для iPod на iPhone).

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

Я наконец смог повернуть его, но он не работает в полноэкранном режиме, по умолчанию это портрет.

И поскольку он не работает в полноэкранном режиме, вы видите элементы в родительских представлениях над видео.

Есть ли простой способ повернуть это видео в полноэкранном режиме, или мне нужно передать сообщение родительским представлениям, чтобы скрыть элементы во время воспроизведения видео?

вот код:

    NSURL *url = [NSURL URLWithString:[recipeData objectForKey:@"videoPath"]];

    MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];  

    // Register to receive a notification when the movie has finished playing.  
    [[NSNotificationCenter defaultCenter] addObserver:self  
                                             selector:@selector(moviePlayBackDidFinish:)  
                                                 name:MPMoviePlayerPlaybackDidFinishNotification  
                                               object:moviePlayer];  


        moviePlayer.controlStyle =   MPMovieControlStyleFullscreen;
        moviePlayer.scalingMode = MPMovieScalingModeAspectFill;
        moviePlayer.shouldAutoplay = YES;  
        moviePlayer.view.frame = [[UIScreen mainScreen] applicationFrame];
        moviePlayer.view.transform = CGAffineTransformMakeRotation(1.57079633);
        moviePlayer.view.bounds = CGRectMake(0.0, 0.0, 480, 320);

        [self.view addSubview:moviePlayer.view];  
//commenting out the line below will rotate the video, leaving it uncommented forces it to play fullscreen in portrait
        [moviePlayer setFullscreen:YES animated:NO];  

Ответы [ 3 ]

1 голос
/ 10 февраля 2011

Я поместил метод для создания видео в appDelegate и нацеливаю его при каждом запуске видео. Это добилось цели, оставив ее выше всего остального.

0 голосов
/ 27 декабря 2011

Для полноэкранного воспроизведения вы должны использовать MPMoviePlayerViewController, а затем для его запуска и воспроизведения в альбомном формате используйте метод shouldAutorotateToInterfaceOrientation класса MPMoviePlayerViewController.

выглядит так:

[yourInstanceOfMPMoviePlayerViewController shouldAutorotateToInterfaceOrientation: UIInterfaceOrientationLandscapeRight];
0 голосов
/ 19 января 2011

Вы пробовали использовать MPMoviePlayerViewController вместо этого? он представляет полноэкранный почти модальный вид контроллера для управления воспроизведением видео. Я использую его в версии> = 3.2 и использую взломанную версию MPMoviePlayerController для <3.2 </p>

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