2013-02-27 11 views
0

내보기에 특정 크기와 위치에 MPMoviePlayerController를 배치하고 있습니다. 이것은 잘 작동합니다. 그러나 특정 상황에서 비디오를 전체 화면으로 재생하고 싶습니다. 내보기는 UISPlitViewController의 일부이므로보기 너비 만 얻으면 전체 화면이 아닙니다. 내가 필요한 것은 사용자가 비디오에서 최대화하기 위해 플레이어 컨트롤에서 양 끝의 화살표를 클릭 한 것처럼 비디오를 표시하는 것입니다.MPMoviePlayerController를 전체 화면으로

여기 내 코드가 있습니다. 누구나 전체 화면을 재생하는 누락 된 비트를 채울 수 있습니까?

[moviePlayer setFullscreen:YES animated:YES] 

는 당신이 봤어 :

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    // FIND OUT HOW MANY VIDEOS ARE AVAILABLE 
    int videoCount = [[self videos] count]; 

    // GET THE FILE NAME OF THE FIRST AVAILABLE VIDEO 
    NSString* fileName = [NSString stringWithFormat:@"%@.mp4", [self videos] objectAtIndex:0]]; 
    NSArray *arrayPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *path = [arrayPaths objectAtIndex:0]; 
    NSString *filePath = [path stringByAppendingPathComponent:fileName]; 
    NSURL *url = [NSURL fileURLWithPath:filePath]; 

    // PLACE THE MOVIE AT THE CORRECT LOCATION ON THE PAGE 
    moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url]; 
    [[moviePlayer view] setFrame:CGRectMake(100, 100, 600, 360)]; 
    [[moviePlayer view] setAutoresizingMask:UIViewAutoresizingFlexibleWidth]; 
    [[self view] addSubview:moviePlayer.view]; 
    [moviePlayer play]; 

    if(videoCount == 1) 
    { 
     -- MAXIMISE THE VIDEO TO FULL SCREEN AND LANDSCAPE -- 
    } 
} 

덕분에 애플의 문서 당으로

답변

0

, 당신은 단지 전체 화면으로 이동합니다`MPMoviePlayerController를 설정해야?

+0

예. 아무런 차이가 없었습니다. 영화는 여전히 coords 100, 100에서 600 x 360입니다 – Typhoon101

+0

다른 조언이 있으십니까? @lxt가 준 라인이 실제로는 효과가 있었을 것이라고 생각했지만 그렇지 않았습니다. – Typhoon101

+0

@ user857903 setFullscreen이 작동하지 않는 방법은 없습니다. 플레이어가 전체 화면으로 이동하면 호출되는 것처럼 viewWill/DidDisappear에서 불필요한 작업을 수행하지 않도록하십시오 (전체 화면에서 viewController가 실제로 사라지게되므로). – Till

0

MP4 파일 때문에 MPMoviePlayerViewController를 사용하십시오. MOV를 사용할 때 완벽하게 작동합니다!

MPMoviePlayerViewController *moviePlayerViewController; 

-(void)PlayVedioController:(NSString*)videoUrl1 
{ 
    NSURL *fileURL = [NSURL URLWithString:videoUrl1]; 
    moviePlayerViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:fileURL]; 

    // Register for the playback finished notification. 
    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(myMovieFinishedCallback:) 
               name:MPMoviePlayerPlaybackDidFinishNotification 
               object:moviePlayerViewController.moviePlayer]; 

    //Present 
    [self presentMoviePlayerViewControllerAnimated:moviePlayerViewController]; 

    // Play the movie! 
    moviePlayerViewController.moviePlayer.movieSourceType = MPMovieSourceTypeFile; 
    [moviePlayerViewController.moviePlayer play]; 
} 

-(void)myMovieFinishedCallback:(NSNotification*)aNotification 
{ 
    [[NSNotificationCenter defaultCenter] removeObserver:self 
                name:MPMoviePlayerPlaybackDidFinishNotification 
                object:moviePlayerViewController.moviePlayer]; 

    [moviePlayerViewController release], moviePlayerViewController = nil; 
} 
관련 문제