Ios 如何清楚区分手势?

Ios 如何清楚区分手势?,ios,iphone,swift,uigesturerecognizer,uitapgesturerecognizer,Ios,Iphone,Swift,Uigesturerecognizer,Uitapgesturerecognizer,首先,我对斯威夫特很陌生 我正在做一个应用程序,我必须识别很多手势(向上、向下、向左、向右、单击、双击、双指单击、双指双击、旋转等) 我能够识别每个手势,但我的问题发生在双击时。 该应用程序在双击之前识别出一次点击(看起来合乎逻辑…),但由于每个手势都专用于一个动作,这是一个问题:它在链接到双击的动作之前发送链接到单次点击的动作 你知道我怎样才能摆脱这个吗? 我显然不知道:/ 多谢各位 祝你今天愉快 // SINGLE TAP @IBOutlet var oneFingerTap: UITapG

首先,我对斯威夫特很陌生

我正在做一个应用程序,我必须识别很多手势(向上、向下、向左、向右、单击、双击、双指单击、双指双击、旋转等)

我能够识别每个手势,但我的问题发生在双击时。 该应用程序在双击之前识别出一次点击(看起来合乎逻辑…),但由于每个手势都专用于一个动作,这是一个问题:它在链接到双击的动作之前发送链接到单次点击的动作

你知道我怎样才能摆脱这个吗? 我显然不知道:/

多谢各位

祝你今天愉快

// SINGLE TAP
@IBOutlet var oneFingerTap: UITapGestureRecognizer!

@IBOutlet var twoFingersTap: UITapGestureRecognizer!

// DOUBLE TAP

@IBOutlet var doubleTapOneFinger: UITapGestureRecognizer!

@IBOutlet var doubleTapTwoFinger: UITapGestureRecognizer!

// SINGLE TAP

@IBAction func oneFingerTap(_ sender: UITapGestureRecognizer) {
    statusLabel.text = "single Tap"
}

@IBAction func twoFingersTap(_ sender: UITapGestureRecognizer) {
    statusLabel.text = "Two fingers Tap"
}
// DOUBLE TAP

@IBAction func doubleTapOneFinger(_ sender: UITapGestureRecognizer) {
    statusLabel.text = "Double Tap 1 finger"
}

@IBAction func doubleTapTwoFingers(_ sender: UITapGestureRecognizer) {
    statusLabel.text = "Double Tap 2 fingers"
}
编辑: 我尝试了[UITapgestureRecognitor]上的内容-单点和双点

]但什么都没用

以下是我尝试过的:

doubleTapOneFinger.require(toFail: oneFingerTap);
执行此操作会引发一个错误“致命错误:在展开可选值时意外发现nil”,因此我更改了声明变量的方式,以避免使用如下可选变量:

let oneFingerTap = UITapGestureRecognizer(target: self, action: #selector(self.oneFingerTap))
oneFingerTap.numberOfTapsRequired = 1
oneFingerTap.numberOfTouchesRequired = 1
self.view.addGestureRecognizer(oneFingerTap)

let twoFingerTap = UITapGestureRecognizer(target: self, action: #selector(self.twoFingersTap))
twoFingerTap.numberOfTapsRequired = 1;
twoFingerTap.numberOfTouchesRequired = 2;
self.view.addGestureRecognizer(twoFingerTap)

不再出错,但什么也没发生。。。你知道我能做什么吗?

:-尝试添加这行代码[oneFingerTap RequiremeTestureRecognitizerToFail:TapRecognitizerEditEffect];您如何创建UITapGestureRecognizer?是通过xib吗?可能是@GrzegorzKrukowski的副本是的,它是通过接口生成器实现的。我拖放它,然后将它与我的函数链接。@Hawkydoky有swift 2和swift 3版本的代码。没有变化。在发布相同的重复问题之前,您应该尝试现有答案。如果它不起作用,那么用适当的参考和用例发布问题。