2011-09-15 6 views
3

タイトルのとおり、私はUIView sublassを持っており、UITapGRが追加されています。UITapGestureRecognizerを使用してUIViewの上にあるUIButtonが機能しない

このクラスのサブクラスでは、ビューの上にはほとんどUIButtonがありません。 UIButtonは触れません。私が[[tapGR view] class]を見ようとしたとき、それはUIButtonの親のビューでした。 NOにsetCancelsTouchesInViewを呼び出すことは役に立ちません。

アイデア?

+0

どのようにシングルタップを使用する方法について。.. .nu​​mberOfTapsRequired = 1とし、他のレコグナイザと同時に使用するボタンごとにボタンのフレームなどを使用します。 – user523234

+0

が、それはこちらのリンクの説明を入力します]が見つかり、[1] [1]:http://stackoverflow.com/questions/3344341/uibutton-inside-a-view-that-has-a-uitapgesturerecognizer – Mapedd

答えて

0

あなたができる

.userInteractionEnabled = NO 
+0

はい、しかし、私はあなたがUITapGestureRecognizerを使用したい場合は、 .setUserInteractionEnabled = NO 私はUITapGR – Mapedd

+0

からイベントを受け取ることができませんが、認識はUIVIewに設定されていますか?だから、あなたはボタンのやりとりを無効にする必要がありますか、何かが足りなくなっているかもしれません。 – Fredrik

+0

UIViewにUITapGRがあり、そのUIViewの上にUIButtonがあります。 – Mapedd

3

何か、クリックスルーすることができるようにしたい場合は、UIButtonためのタッチイベントを無視するように、このコードを使用することができます:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch { 
    if ([touch.view isKindOfClass:[UIButton class]]){ 
     return NO; 
    } 
    return YES; 
} 
関連する問題