2012-08-15 84 views
1

我的代碼正確播放視頻,但不是全屏顯示。MPMoviePlayerController全屏不工作

----------- 
|_______ | 
|XXXXXXX| | 
|XXXXXXX| |  
----------- 

它的大小約爲X字段的大小。
我在ipad2上運行這個。

NSString *urlStr = [[NSBundle mainBundle] pathForResource:@"movie.mp4" ofType:nil]; 
    NSURL *url = [NSURL fileURLWithPath:urlStr]; 
    videoPlayer = [[MPMoviePlayerController alloc] initWithContentURL:url]; 
    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(movieFinishedCallback:) 
               name:MPMoviePlayerPlaybackDidFinishNotification 
               object:videoPlayer]; 
    [self.view addSubview:videoPlayer.view]; 
    [videoPlayer setFullscreen:YES]; 
    videoPlayer.view.frame = [[UIScreen mainScreen] bounds]; 
    [videoPlayer play];  
    [super viewDidLoad];  
+0

顯然,如果你將它添加到你的viewControllers'self.view',它就會像你提到的那樣顯示。我已經通過將你的播放器添加到一個臨時的'UIView'來修復它。但這不是一個完整的答案。 – ohr 2012-08-15 18:27:39

+0

檢查這個問題的答案http://stackoverflow.com/questions/4056844/mpmovieplayercontroller-vs-mpmovieplayerviewcontroller/5834370#5834370它可能會幫助你 – 2012-08-15 18:42:06

+0

我知道它不是最好的答案... 但它工作:)乾杯。 – 2012-08-15 18:58:06

回答

2

MPMoviePlayerController的幀設置爲1024x768。

videoPlayer.view.frame = CGRectMake(0,0,1024,768); //748 if you have status bar. 

希望這就是你要找的。 *編輯:嘗試這種方式,這是我使用的。

UIView *tempView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1024, 768)]; 
[self.view addSubview:tempView]; 

playerViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL URLWithString:@"www.orangebob.com/files/movie.mp4"]]; 

[[NSNotificationCenter defaultCenter] 
addObserver:self 
selector:@selector(movieFinishedCallback:) 
name:MPMoviePlayerPlaybackDidFinishNotification 
object:[playerViewController moviePlayer]]; 

playerViewController.view.frame = CGRectMake(0, 0, 1024, 768); 
[tempView addSubview:playerViewController.view]; //This *fixes* it, but it's kinda dirty. 



MPMoviePlayerController *player = [playerViewController moviePlayer]; 

[player play]; 
+0

還有同樣的問題:( – 2012-08-15 18:06:28

+0

你有沒有刪除這行?'videoPlayer.view.frame = [[UIScreen mainScreen]界限];' – ohr 2012-08-15 18:07:26

+0

是的......我將視頻上傳到www.orangebob.com/files/movie .mp4如果這將幫助你... – 2012-08-15 18:09:55