2012-02-21 11:59:18.106 textView[20977:fe03] ; target= <(action=delayed:, target=)>>
2012-02-21 11:59:18.107 textView[20977:fe03] ; target= <(action=handlePan:, target=)>>
2012-02-21 11:59:18.108 textView[20977:fe03] ; target= <(action=oneFingerTripleTap:, target=)>; numberOfTapsRequired = 3>
2012-02-21 11:59:18.108 textView[20977:fe03] ; target= <(action=oneFingerDoubleTap:, target=)>; numberOfTapsRequired = 2>
2012-02-21 11:59:18.109 textView[20977:fe03] ; target= <(action=twoFingerSingleTap:, target=)>; numberOfTouchesRequired = 2>
2012-02-21 11:59:18.123 textView[20977:fe03] ; target= <(action=tapAndAHalf:, target=)>>
2012-02-21 11:59:18.124 textView[20977:fe03] ; target= <(action=twoFingerRangedSelectGesture:, target=)>>
2012-02-21 11:59:18.124 textView[20977:fe03] ; target= <(action=oneFingerTap:, target=)>>
2012-02-21 11:59:18.129 textView[20977:fe03] ; target= <(action=loupeGesture:, target=)>>
Above the list of gestureRecogniser on UITextView. I need to prevent event: twoFingerSingleTap on UITextView, but only this event. there is possible?
UITextView, as any other subclass of UIView, has gestureRecognizers property, which contains an NSArray of all gesture recognizers attached to a view. Enumerate this array, find recognizer you're looking for and disable it.
ReplyDeleteYou need something like:
ReplyDeletefor (UIGestureRecognizer *g in myTextView.gestureRecognizers)
{
if ([g isKindOfClass:[UITapGestureRecognizer class]])
{
if (([(UITapGestureRecognizer *)g numberOfTouchesRequired] == 2) && ([(UITapGestureRecognizer *)g numberOfTapsRequired] == 1))
{
[g setEnabled: NO];
}
}
}