UITapGestureRecognizer - 检测点击位置是否有精灵(swift)

时间:2017-08-06 20:02:36

标签: ios swift uitapgesturerecognizer tap

我正在制作iOS游戏,需要知道如何获取uitapgesturerecognizer的tap位置。我 NOT 想要使用touchesBegan,touchesEnded等。我还需要知道如何检查用户是否双击了精灵节点。我已经设置了uitapgesturerecognizer,我需要知道的是如何找到触摸的位置,看看它是否与精灵节点的位置相同。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

假设你的精灵属于一个继承自UIView的类(我认为它们通常都是这样),手势识别器的处理函数应如下所示。

func handleDoubleTap(gestureRecognizer: UITapGestureRecognizer) {

    let tapLocation = gestureRecognizer.location(in: gestureRecognizer.view)
    if mySprite.frame.contains(tapLocation){
        print("tapped")
    }

}