2011-09-13 22 views
1

私はサブビューとしてUIViewを持つviewControllerを持っていますが、ユーザーがViewControllerからUIViewをクリックした場合にのみ私がどのように伝えるか疑問に思っていました。UIViewのタッチを検出する場合

これは可能ですか? ありがとう!

答えて

1

UITapGestureRecognizerのドキュメントをチェックアウト:

http://developer.apple.com/library/ios/#documentation/uikit/reference/UITapGestureRecognizer_Class/Reference/Reference.html

あなたはinitWithTargetを使用して、あなたのUIViewControllerでUITapGestureRecognizerをインスタンス化します:アクション(あなたのタップを処理するセレクタを渡します)。次に、addGestureRecognizerメソッドを使用してUIGestureRecognizerをUIViewに追加します。

+0

を使用して、同時に2つのジェスチャー認識機能を使用することができますが、それは唯一のタップを含み、ユーザーが何を押している場合は、その後、自分の指をドラッグしますUIViewの中で、私は 'touchesBegan:'を使用して考えていたが、私はちょうど方法を知らない。 –

+0

hmmm、私はその質問を誤解していると思うので、あなたはタップについて知りたいと思っていました。他のユーザーの行動を捕らえたい場合は、多くのジェスチャ認識ツールがあります。既存のGestureRecognizerサブクラスで扱われていない動作をキャプチャしたい場合にのみ、touchesBeganを使用します。 – evanflash

1

touchesBegan、touchesMovedおよびtouchesEndedメソッドを使用できます。アプリケーションによっては、キャンセルされたタッチを使用することもできます。

これらのどれも動作しない場合は、UIGestureRecognizers - UIPanGestureRecognizerとUITapGestureRecognizerを使用することができます。

ちょうどそれが役に立つかもしれません場合は、あなたもこの方法

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer 
関連する問題