2

インタラクティブなビデオを実現するために、現在の再生時間に応じて MPMoviePlayerController にサブビューを追加します。この時点で、次の 1 つを除いて、すべてが正常に機能しています。

MPMoviePlayerControllerユーザーがビデオ内に触れると、サブビューの下にのコントロール要素が表示されます。

例 (10/10) の 0:10 から 0:20 の間に 1 つのサブビューが表示されます。ユーザーが前後にシークしたい場合、サブビューはプレーヤーのコントロール要素の前に表示され、それらをブロックします。

次のようにサブビューを追加します。

overlay.hidden = FALSE;
[self.player.view addSubview:overlay];

overlayUIView のサブクラスはどこにありますか。

コントロール要素の表示方法を制御したり、ムービーとコントロール要素の間にサブビューを追加したりする方法はありますか?

私は試した:

[self.player.backgroundView addSubview:overlay]; しかし、ここに映画の背後にあるサブビューがあります。

コントロール要素は のサブビューではありませんMPMoviePlayerController

4

1 に答える 1

2

デバッグ時には、MPMoviePlayerController のビューを再帰的に出力する必要があります。これにより、そのビューのサブビュー階層全体が表示されます。そのようです:

po [[[self player] ビュー] recursiveDescription]

4 つのサブビューを持つ MPVideoContainerView を探します。サブビューを 2 と 3 の間に挿入する必要があります。ビデオを描画する MPVideoView と、すべてのコントロールを保持する MPInlineVideoOverlay です。

于 2012-12-13T22:37:11.847 に答える