问题
I am developing a game using Sprite and the game works perfectly fine. I am trying to add in a feature that allows you to change things on that GameView. But the buttons for the feature are on a different ViewController. How would I be able to have the code be implemented into a different view controller?
This is the code i want the button to implement
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")
}
}
And here is the button
@IBAction func button(_ sender: AnyObject) {
} But the button is on ViewController1 and the object that i want to change is on ViewController2 (GemScene)
回答1:
Take a look to this question:
Passing Data between View Controllers (One of the answers shows Swift 3 syntax.)
Anyway, what I personally have done in these cases is to use NotificationCenter, which provides loosely coupled messages even between different ViewControllers. You can take a look here: NSNotifications in Swift 3
来源:https://stackoverflow.com/questions/39714510/sharing-information-between-viewcontollers