首页 > 解决方案 > SpriteKit 中的多个按钮

问题描述

我使用SKSpriteNode以下代码创建了一个按钮:

quadrato_editor.name = "Ball"
node.name = "Hey"

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    if quadrato_editor.name == "Ball" {
        quadrato.isHidden = false
    }
}

要添加更多按钮,我尝试了这个:

if quadrato_editor.name == "Ball" {
    quadrato.isHidden = false
} else if node.name = "Hey" {
    ko.ishidden = true
}

但我无法让它工作。两个值"Ball""Hey"都是真的。

SpriteKit如何在使用中添加多个按钮Swift?如果这是一个菜鸟问题,请原谅我,这是我第一次使用SpriteKit.

标签: iosswiftsprite-kit

解决方案


您需要检查touches以确定按下哪个按钮:

for touch in touches {
    if let node = self.nodes(at: touch.location(in: self)).first {
        switch node.name {
            case "Ball": quadrato.isHidden = false
            case "Hey": ko.ishidden = true
            default: break
        }
    }
}

推荐阅读