2011-09-08 12 views
3

私はMPMoviePlayerViewControllerを持っています.1つのタップを認識するためにその上にUIViewを置いて、コントロールパネルを表示してビデオを拡大/縮小する必要があります再生するので、ジェスチャ認識器にnumberOfTapsRequired = 1を設定しますが、ダブルタップするとビデオはズームされませんが、コントロールパネルが表示され、2つのタップがあるかのように消えます。iOS TapGestureRecognizerはnumberOfTapsRequired = 1のダブルタップを食べます

とにかくそれを解決するには?

ありがとうございます!

+0

これは役に立ちます。http://stackoverflow.com/questions/9008975/how-to-tap-to-zoom-and-double-tap-to-zoom-out-with-uiscrollview/9009554#9009554 –

答えて

7

はい。 [UIGestureRecognizer requireGestureRecognierToFail:]はこの目的のためのものです。シングルタップジェスチャ認識機能を設定して、ダブルタップジェスチャ認識機能が失敗するようにします。失敗しない場合、ズームが行われます。失敗した場合(つまり、2回ではなく1回タップした場合)、コントロールパネルが表示されます。

+0

ビューにダブルタップ認識機能を追加しますか?そうした場合、ダブルタップは認識され、元のビデオ再生ビューには渡されません。また、ビデオプレーヤーのビューの上に別のUIViewがあることを強調したい場合は、MPMoviePlayerViewController.viewに認識機能を追加できません。 – hzxu

+0

はい、ダブルタップをビューに追加します。私が「MPMoviePlayerViewController」にプロパティを追加できなくなったのは、[NGMoviePlayer](https://bitbucket.org/brentsimmons/ngmovieplayer)に基づいて私自身の 'AVPlayer'ムービープレーヤーを作成することでした。あなたはそのいくらかの極端なルート(私は広告サポートと他のもののためにそれをやっていました)でも行きたくないかもしれません。 – darvids0n

+0

私はそれを試しましたが、今すぐ "タップして"コントロールパネルが表示され、消えることはありませんが、ムービーの再生はまだズームされていないので、ムービープレーヤーにダブルタップを渡す方法は?ありがとう! – hzxu

関連する問題