2010-12-07 20 views
0

我創建一個使用MPMovieController作爲基地的自定義MovieController。我可以通過調用MPMoviePlayerController不響應setFullscreen =否

_[moviePlayer setFullscreen:YES animated:YES];_ 

調用同一個功能切換視頻全屏([moviePlayer setFullscreen:NO動畫:是];)帶來的電影播放器​​返回到原來的狀態(即當用戶按完成按鈕)不起作用。

作爲替代,我也試着 -

一)聽取MPMoviePlayerDidExitFullscreenNotification,並呼籲moviePlayBackDidFinish:功能這樣的結果。

b)由內張貼我自定義通知「完成」使用此功能 -

NSDictionary *thisDictionary = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:MPMovieFinishReasonUserExited] forKey:MPMoviePlayerPlaybackDidFinishReasonUserInfoKey]; 
[[NSNotificationCenter defaultCenter] postNotificationName:MPMoviePlayerDidExitFullscreenNotification object:moviePlayer userInfo:thisDictionary]; 

但在所有這些情況下,影片播放器視圖不返回其原始狀態。

幫助請。

謝謝!

回答

0

您必須爲活動註冊通知。當您準備播放視頻,做這樣的

[[NSNotificationCenter defaultCenter] addObserver:self 
         selector:@selector(moviePlayBackDidFinish:) 
         name:MPMoviePlayerPlaybackDidFinishNotification 
         object:nil]; 

,並在您moviePlayBackDidFinish選擇,做這樣的

[[UIApplication sharedApplication] setStatusBarHidden:YES]; 
    [[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification 
     object:nil]; 


[self dismissModalViewControllerAnimated:YES];