版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_18683985/article/details/83015499
2.方法
- (instancetype)initWithTarget:(nullable id)target action:(nullable SEL)action NS_DESIGNATED_INITIALIZER;
- (void)addTarget:(id)target action:(SEL)action;
- (void)removeTarget:(nullable id)target action:(nullable SEL)action;
- (void)requireGestureRecognizerToFail:(UIGestureRecognizer *)otherGestureRecognizer;
- (CGPoint)locationInView:(nullable UIView*)view;
- (NSUInteger)numberOfTouches;
- (CGPoint)locationOfTouch:(NSUInteger)touchIndex inView:(nullable UIView*)view;
-
- (instancetype)initWithTarget:(nullable id)target action:(nullable SEL)action
该方法返回了一个instancetype
当前类型的对象,这个很重要,因为UIGestureRecognizer的子类也是这个创建方法.
target是处理对象(哪个类去处理) action是响应方法.
-
- (void)addTarget:(id)target action:(SEL)action;
添加处理对象的响应方法.
-
- (void)removeTarget:(nullable id)target action:(nullable SEL)action;
移除某个处理对象的响应方法.
-
(void)requireGestureRecognizerToFail:(UIGestureRecognizer *)otherGestureRecognizer
这个方法在多手势处理的时候比较重要,这个可以理解为依赖,当otherGestureRecognizer手势识别失败的时候才去识别本手势.
-
- (CGPoint)locationInView:(nullable UIView*)view;
此方法可以获取手势在传入的view上的相对位置.如果传入nil就是返回当前窗口的基本坐标系统中的触摸位置.
-
- (NSUInteger)numberOfTouches;
同上一张的numberOfTouches属性.
-
- (CGPoint)locationOfTouch:(NSUInteger)touchIndex inView:(nullable UIView*)view;
touchIndex为touch数组索引.view同5