我正在寻找touchesEnded
的最终位置。 我的touchesBegan
代码如下所示:
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
if let touch = touches.first {
touchStart = touch.locationInNode(self)
print("touchStart_1: (touchStart)")
}
}
打印物给了我位置。
在touchesEnded
,我有以下内容:
override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
if let touch = touches.first, start = touchStart {
print("touchStart_2: (touchStart)")
let location = touch.locationInNode(self)
print("touchEnded: (location)")
}
}
这些打印都不会返回任何内容。 作为附加信息,我在其他地方也使用UISwipeGestureRecognizer
,但我知道手势识别器独立于触摸工作。 知道怎么回事吗?
设置这 2 个手势属性:
let swipeGesturte: UISwipeGestureRecognizer = UISwipeGestureRecognizer(target: self, action: "swipeAction:")
swipeGesturte.direction = UISwipeGestureRecognizerDirection.Right
swipeGesturte.cancelsTouchesInView = false // 1.
swipeGesturte.delaysTouchesEnded = false // 2.
self.view.addGestureRecognizer(swipeGesturte)
有关 cancelsTouchesInView 的更多信息:当调用 setCancelsTouchesInView 时会发生什么?