我正在使用Sprite开发游戏,游戏运行得非常好。我正在尝试添加一个允许您更改该GameView上的内容的功能。但该功能的按钮位于不同的ViewController上。我怎样才能将代码实现到不同的视图控制器中?
这是我希望按钮实现的代码
for touch: AnyObject in touches {
// Get the location of the touch in this scene
let location = touch.location(in: self)
// Check if the location of the touch is within the button's bounds
if button.contains(location) {
Ghost.texture = SKTexture(imageNamed:"Ghost2")
}
}
这是按钮
@IBAction func button(_ sender: AnyObject) {
} 但该按钮位于ViewController1上,我想要更改的对象位于ViewController2(GemScene)上
答案 0 :(得分:1)
看看这个问题:
Passing Data between View Controllers(其中一个答案显示了Swift 3语法。)
无论如何,我个人在这些情况下所做的是使用NotificationCenter,即使在不同的ViewController之间也提供松散耦合的消息。你可以看看这里:NSNotifications in Swift 3