有人可以告诉我下面这行代码具体是做什么吗? 我已经查阅了苹果公司的文档,但是没有得到确切的解释。
[scrollview.panGestureRecognizer requireGestureRecognizerToFail:swipeRightGesture];
有人可以告诉我下面这行代码具体是做什么吗? 我已经查阅了苹果公司的文档,但是没有得到确切的解释。
[scrollview.panGestureRecognizer requireGestureRecognizerToFail:swipeRightGesture];
requireGestureRecognizerToFail:
的文档:接收器转换到的状态取决于其他手势识别器[第二个参考手势识别器]的情况:
如果其他手势识别器转换到UIGestureRecognizerStateFailed,则接收器转换为其正常下一个状态。
如果其他手势识别器转换为UIGestureRecognizerStateRecognized或UIGestureRecognizerStateBegan,则接收器转换为UIGestureRecognizerStateFailed。
[scrollview.panGestureRecognizer requireGestureRecognizerToFail:swipeRightGesture];
一个示例,当您想要单击手势需要双击手势失败时,可以使用[_singleTap requireGestureRecognizerToFail:_doubleTap]
。双击包括两次单击,因此如果没有requireGestureRecognizerToFail
,单击手势委托方法可能会调用两次。
因此,在这里,滑动手势可能会触发平移手势,当您实际滑动时,将调用panGestureRecognizer委托方法。
如果添加[panGestureRecognizer requireGestureRecognizerToFail:swipeRightGesture]
,一旦swipeRightGesture过渡到UIGestureRecognizerStateRecognized或UIGestureRecognizerStateBegan状态,panGestureRecognizer
立即过渡到UIGestureRecognizerStateFailed状态。
只有当swipeRightGesture还没有过渡到上述RecognizerStates时,panGestureRecognizer才能响应,过渡到UIGestureRecognizerStateBegan并调用panGestureRecognizer委托方法。