【发布时间】:2015-05-31 02:12:44
【问题描述】:
您好,我设置了一个 spriteKit 游戏,每次用户死亡时,我都会弹出一个 ViewController,其中包含重试按钮和一些 iAd 设置。
我有一个到 viewController 的 segue 和一个从 VC 到 gameViewController 的 unwind segue。
当我调用 unwind 函数时,我出于不同的原因重新初始化场景。我的问题是,我是在创建最终会导致崩溃的视图,还是我正确地重新初始化了场景。我从 viewDidLoad 中获取代码并将其放入一个名为“setUp()”的函数中,然后从 unwindSegue 调用该函数。
检查一下:(全部在 GameViewController 中)
var currentLevel: Int!
var gameScene = GameScene()
override func viewDidLoad() {
super.viewDidLoad()
currentLevel = gameScene.currentLevel
setUp()
}
@IBAction func perpareForUnwind(unwindSegue: UIStoryboardSegue) {
setUp()
}
func setUp() {
if let scene = GameScene.level(currentLevel) {
// Configure the view.
let skView = self.view as SKView
skView.showsFPS = true
skView.showsNodeCount = true
/* Sprite Kit applies additional optimizations to improve rendering performance */
skView.ignoresSiblingOrder = true
/* Set the scale mode to scale to fit the window */
scene.scaleMode = .AspectFill
skView.presentScene(scene)
scene.viewController = self
}
}
【问题讨论】:
标签: ios iphone swift uiviewcontroller sprite-kit