MPMoviePlayViewControllerに問題があります。私はコントローラーを飽きさせ、URLを割り当て、以下を使用してプレーヤーを表示します。
[self presentMoviePlayerViewControllerAnimated:[appDelegate movieController]];
それから映画が終わったとき、私はそれを却下します:
[[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification object:nil];
[self dismissMoviePlayerViewControllerAnimated];
映画プレーヤーは私のAppDelegateに割り当てられています。MPMoviePlayerPlaybackDidFinishNotificationには他にもリスナーがいます。これは、たとえば音声のみがあり、テーブルセルに再生/一時停止ボタンとカウンターが表示されている場合です。
問題は、同じMPMovieViewControllerに2番目のムービーをロードすると、正常に表示されますが、コントロールが正しく機能しないことです。それらは表示されている限り機能しますが、消えるとすぐに元に戻せないため、ムービープレーヤーを閉じることはできません。アプリを閉じたり開いたりすることは機能する場合もありますが、機能しない場合もあります。再開できるようにするには、アプリを「強制終了」します。
コントロールが機能している間にMoviePlayerで後続のビデオを再生する方法はありますか?他のリスナーがアクションをリッスンしているときにDEALLOCが与えられないように、プレーヤーを「リセット」する方法についての提案はありますか?