美文网首页
UIGestureRecognizerDelegate代理方法

UIGestureRecognizerDelegate代理方法

作者: pigLily | 来源:发表于2021-11-25 12:25 被阅读0次

1.开始进行手势识别时调用的方法,返回NO则结束识别,不再触发手势

  • (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
    if ([gestureRecognizer isKindOfClass:[UILongPressGestureRecognizer class]]) {
    return NO;
    }
    return YES;
    }
    有用来处理:手势如果是长按手势,则结束识别.
    2.手指触摸屏幕后回调的方法,返回NO则不再进行手势识别,方法触发此方法在window对象有触摸事件发生时。调用gesture recognizer的touchesBegan:withEvent:方法之前调用,如果返回NO,则gesture recognizer不会看到此触摸事件,默认情况下为YES
  • (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
    //判断如果点击的view是UICollectionView则接收touch点击事件,就可以执行手势方法,否则不执行
    if ([touch.view isKindOfClass:[UICollectionView class]]) {
    return YES;
    }
    return NO;
    }
    3.是否支持多手势触发,返回YES则可以多个手势一起触发方法,返回NO则为互斥,是否允许多个手势识别器共同识别,一个控件的手势识别后是否阻断手势识别向下传播,默认返回NO,如果为YES,响应者链上层对象触发手势识别后,如果下层也添加了手势并成功识别也会继续执行,否则上层对象识别后不再继续传递
  • (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer;

相关文章

网友评论

      本文标题:UIGestureRecognizerDelegate代理方法

      本文链接:https://www.haomeiwen.com/subject/kjuatrtx.html