1.比如与某个控件的响应响应事件冲突,比如:UIButton
UIGestureRecognizerDelegate两三事:
-(BOOL)gestureRecognizer:(UIGestureRecognizer*)gestureRecognizer shouldReceiveTouch:(UITouch*)touch {
if([touch.view isKindOfClass:[UIButton class]])
return NO;//不会执行UIGestureRecognizer注册的事件
else
return YES;//会执行UIGestureRecognizer注册的事件
//或者下边这种方式也可以。
CGPoint location = [touch locationInView:self];
if(CGRectContainsPoint(某个冲突button.frame, location)){
return NO;
}
return YES;
}
2。与UIScrollView滑动冲突,导致不好使。比如与UIPanGestureRecognizer冲突。
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer{
return YES;//UIScrollView 和 子View上的UIPanGestureRecognizer都会响应
return NO;//只响应子View上的UIPanGestureRecognizer
}