0

我對MPMoviePlayViewController有困難。 我饞控制器,指定網址,並使用顯示玩家:在一個MPMoviePlayerViewController中播放後續影片

[self presentMoviePlayerViewControllerAnimated:[appDelegate movieController]]; 

然後,當電影結束我駁回:

[[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification object:nil];  
[self dismissMoviePlayerViewControllerAnimated]; 

的電影播放器​​是在我的AppDelegate頁頭。 MPMoviePlayerPlaybackDidFinishNotification上有一些其他偵聽器。這適用於可能存在例如只是音頻,它顯示一個播放/暫停按鈕和計數器在表格單元格中。

問題是,當我在同一個MPMovieViewController中加載第二部電影時,它看起來很好,但控件無法正常工作。只要它們可見,它們就會工作,但只要它們消失,就沒有可能將它們還回來,從而解散電影播放器​​。有時候關閉並打開App有效,但有時它不會,我需要'殺死'應用程序以便能夠重新開始。

當控件仍然有效時,是否有方法在MoviePlayer中播放後續視頻? 任何建議如何「重置」播放器的方式,我可以阻止其他聽衆給予DEALLOC,因爲他們正在傾聽該動作?

回答

0

你不需要解僱你只需要設置新的URL玩家......也許我missunderstood您的問題...

嘗試添加以下內容到設置電影播放器​​

moviePlayerController.view.userInteractionEnabled = YES; 
+0

這是對的,但似乎存在一個問題,該視圖不會註冊與玩家的任何交互來顯示/隱藏控件。因此,一旦控件被隱藏,它們將不會返回到屏幕上,並且不可能返回到先前的視圖。 我現在正在通過設置一個標誌來解決這個問題,當視頻停止播放時,在下一個請求中釋放播放器並重新實例化它。不是最優雅的方式,但它解決了這個問題。 –

+0

因此,您的控件一旦被解僱就不會顯示出來?您的控件是否定製? –

+0

當你在播放電影時,他們會解僱他們,他們永遠不會回來? –

相關問題