MPMoviePlayerController
iOS 5 を搭載した iPad で正常に動作し、最初は特定のフレームで自分自身のサブビューに追加することでビデオが開始されますMPMoviePlayerController
。MPMoviePlayerController
ムービーをフルスクリーンで表示している埋め込みコントロールのフルスクリーン ボタンを押して、もう一度ボタンをタップすると、ビデオが最初のフレームに戻ります。しかし、iOS 6 では、全画面ボタンを押してビデオを最初のフレームに戻すと、ビデオが画面からはみ出してしまいました。Apple がMPMoviePlayer
クラスに文書化されていない変更を加えたため、この奇妙な動作が発生したようです。これを修正した人はいますか?
1 に答える
私はこの問題を自分で修正しました。iOS 6 では、 Apple がMPMoviePLayerController
クラスに文書化されていない変更を加えました。フルスクリーン ボタンをタップするviewWillDisappear
とviewDidDisAppear
、コントローラーの起動MPMoviePLayerController
とその ParentController の両方に対して が呼び出されます。
私のプロジェクト (pdf リーダー) では、非常に複雑なビュー階層があり、ビュー コントローラーにリーダーを追加し、readerPageContents ボタン (画像ギャラリー、ビデオ、リンク) をリーダー ページに追加してから、ビデオ ボタン タップでビデオを再生します。 ViewWillDisappear を呼び出していてViewDidDisappear
、ビデオをフルスクリーンで起動するときに、トグルスクリーンボタンを押してビデオを最初のフレームに移動するViewWillAppear
とViewDidAppear
、両方のコントローラーの and が再度呼び出され、親のコントローラー viewDidAppear で PDF ページを再度作成していました動画を削除していました。
ViewDidDisappear
そのため、回避するように簡単に修正し、ViewWillDisappear
some を設定することで呼び出されますBOOL
。