swift - 如何在 Swift 中制作充当按钮的图像?

标签 swift sprite-kit

我有场景中一个按钮的代码,但我尝试使用相同的代码在同一场景中制作另一个按钮,但没有成功。这是我到目前为止的代码:

for touch:AnyObject in touches {
        let location = touch.locationInNode(self)
        if playGameButton.containsPoint(location) {
            let newScene = GameplayScene(size: self.size)
            newScene.scaleMode = scaleMode
            self.view?.presentScene(newScene)

}
    } 

同样,这只是一个 按钮。当我对另一个图像使用相同的代码时,它不起作用。

最佳答案

解决此问题的更好方法是使用 SKSpriteNode 对象作为按钮并设置其名称属性以轻松区分多个按钮。例如,如果您有一个 SKSpriteNode 对象 button1:

button1.name = "first"

然后在你的 touch 方法中检查哪个被触摸,你可以使用 name 属性:

SKNode node = self.nodeAtPoint(location)

if node.name == "first" {
// do something
}

关于swift - 如何在 Swift 中制作充当按钮的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33621055/

相关文章:

iOS XCTestCase 启动、执行一些操作、终止应用程序并重新启动应用程序

ios - Swift 委托(delegate)返回 nil

swift - 如何使用 gzip 将从蓝牙低功耗设备获取的压缩 .gz 文件转换为 Swift 4.2 中的实际解压缩文件?

ios - 从特定图集 Sprite-kit 加载所有文件

ios - 仅检测矩形物理体一侧的碰撞 - Swift3

ios - SKAction playSoundFileNamed 没有通过 iphone 扬声器播放音频

swift - iOS图表,lineChartView动画卡顿

arrays - 快速查找值 json 数组

ios - 为什么我不能设置 SKScene(fileNamed :) in GameViewController?

xcode - 在序列Sprite Kit中使用SKAction时,SKSpriteNode不会淡入InWithDuration