Iphone 按下按钮时忽略UIgestureRecognitor

Iphone 按下按钮时忽略UIgestureRecognitor,iphone,ios,ipad,Iphone,Ios,Ipad,我设置了一个手势识别器,这样当屏幕被点击时,我的工具栏就会向下滑动。当我按下吧台上的按钮时,这算是轻敲。在这种情况下,如何取消手势 谢谢您可以查看SimplegestureRecogners示例项目 迅速: func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldReceive touch: UITouch) -> Bool { if touch.view is UIButton {

我设置了一个手势识别器,这样当屏幕被点击时,我的工具栏就会向下滑动。当我按下吧台上的按钮时,这算是轻敲。在这种情况下,如何取消手势


谢谢

您可以查看SimplegestureRecogners示例项目

迅速:

func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldReceive touch: UITouch) -> Bool {
    if touch.view is UIButton {
        return false
    }
    return true
}

GestureRecognitor.view将作为整体视图而不是工具栏/按钮列出。此if语句用于忽略工具栏中的每个按钮。我花了一分钟找到它,觉得它可能值得添加。如果([touch.view IsDescendatoView:_toolbar])我的解决方案是
return!([touch.view是Kindof类[UIButton类]])
允许我的视图上所有按钮的事件。
func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldReceive touch: UITouch) -> Bool {
    if touch.view is UIButton {
        return false
    }
    return true
}