shouldReceiveTouch 未触发

shouldReceiveTouch not firing

我正试图从我的 TapGestureRecognizer 中排除一个子视图。 已在sotryboard中创建,delegate连接controller

在我的 ViewControler 中,我有 GestureRecognizerDelegate 协议,我已经设置了我的 gesture.delegate = self.

虽然没有调用 shouldReceiveTouch Gesturerecognizer 函数,但知道吗?

下面是代码的一部分:

class DetailedPostViewController: UIViewController, UITextViewDelegate, MKMapViewDelegate, UIGestureRecognizerDelegate {


let circularLike = CircularLike(frame: CGRectZero)

@IBOutlet var gesture: UITapGestureRecognizer!

override func viewDidLoad() {

    super.viewDidLoad()

    gesture.delegate = self

    self.view.addSubview(circularLike)
    circularLike.frame = self.view.bounds

    }


func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldReceiveTouch touch: UITouch) -> Bool {
    if touch.view!.isDescendantOfView(circularLike){
        return false
    }
    return true
    }

@IBAction func UserTap(sender: AnyObject) {
    if fromUser {
     dismissViewControllerAnimated(true, completion: nil)
    } else {
    performSegueWithIdentifier("userPage", sender: nil)
    }
    }



@IBAction func hideUnhide(sender: UIGestureRecognizer) {
    if hide {
        hide=false
        unhideUi()
    } else {
        hide = true
        hideUi()
       }
    }

}

好的,事实上,我只需要将我的子视图 userTouchEnabled 参数设置为 false,然后它就会触发 ShouldRecieveTouch 函数 ...