我的代码有什么问题? Swift 3 spritekit 信号 sigabrt

What's wrong with my code? Swift 3 sprite kit signal sigabbt

我有一个屏幕底部有 4 个按钮的游戏。是工作。但是,如果我触摸屏幕上除了按钮以外的所有地方,游戏就会崩溃并显示消息 Signal Sigabrt...请有人帮助我吗?this is touchesBeganThis is the error message

因为如果数组中没有任何节点,应用程序就会崩溃,所以您必须检查是否有这样的节点:

if node.count > 0 {
  //put your logic here!
}

我不完全确定您的应用崩溃的原因,但我猜这是您的 touchesBegan 代码。试试这个代码:

override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {

    for touch in touches {

        let location = touch.locationInNode(self)
        //normalBTN is just an example

        if normalBTN.containsPoint(location) {

            //type your code here

        }
    }
}

你必须在 touches 中输入 touch(来自 touches from touches begind),放置 let location 变量来告诉节点触摸的位置,if 语句告诉触摸是否正确节点。希望这对您有所帮助!