Поддерживать игру в приостановленном состоянии после активации приложения?
Это мой первый пост на этом форуме, и я заранее прошу прощения, если я что-то делаю не так! :)
Я делаю игру для iphone с помощью Swift & SpriteKit, и в настоящее время я сталкиваюсь с проблемой. Когда мое приложение переходит в фоновый режим, оно вызывает функцию pause (см. Ниже), но оно автоматически прерывается, когда игра возобновляется.
Я видел этот очень интересный пост:Spritekit - держите игру на паузе, когда didBecomeActive (а такжеКак сохранить сцену SpriteKit, когда приложение становится активным?) но я застрял.
Я не знаю, как реализовать новый класс SKView, так как мой View настроен, как показано в приведенном ниже коде ...
Вот как работает мое приложение:
class GameViewController: UIViewController {
var scene: GameScene!
override func viewDidLoad() {
super.viewDidLoad()
// Configure the View
let SkView = view as! SKView
SkView.multipleTouchEnabled = true
// Create and configure the scene
scene = GameScene(size: SkView.bounds.size)
scene.scaleMode = .AspectFill
// Present the scene
SkView.presentScene(scene)
NSNotificationCenter.defaultCenter().addObserver(self, selector: Selector("PauseWhenBackGround:"), name:"PauseWhenBackGround", object: nil)
}
func PauseWhenBackGround(notification : NSNotification) {
if scene.Pausing == false{
scene.Pause()
}
}
Я пробовал следующее:
Я добавил новый класс:
class GameSceneView : SKView {
func CBApplicationDidBecomeActive() {
}
}
Затем я попытался установить свой взгляд какlet SkView = view as! GameSceneView
но я получил сообщение о том, что не могу привести представление к MyProjectName.GameSceneView () ... Я также попробовал следующее:let SkView! = GameSceneView() as GameSceneView!
но я в конечном итоге с серым фоном сцены ...
Кто-нибудь знает, как я могу реализовать новый класс SKView, чтобы предотвратить возникновение ошибки CBApplicationDidBecomeActive (), чтобы игра не приостанавливалась при активации?
Заранее большое спасибо ! :)