2016-06-26 3 views
0

Этот код находится в функции viewDidLoad. В первый раз это называется прекрасно. Но затем я представляю subView поверх него из одного и того же файла раскадровки и когда 'let skView = gameView as! SKView 'снова вызван и выбрасывает Неустранимая ошибка: Найдена нуль ... Как остановить ее от вызова в другое время? Я не могу думать о каких-либо проверках, которые я мог бы, но на месте.(Swift SpriteKit) Разрешить только SKScene

if let scene = GameScene(fileNamed:"GameScene") { 
     // Configure the view. 

     let skView = gameView 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) 

    } 

ответ

0
override func viewWillLayoutSubviews() { 
     super.viewWillLayoutSubviews() 
     let skView = self.view as! SKView 
     if skView.scene == nil { 
      if let scene = GameScene(fileNamed:"GameScene") { 
       skView.presentScene(scene) 
      } 
     } 
} 
Смежные вопросы