これはこのフォーラムでの初めての投稿であり、間違った方法で何かを行っている場合は、あらかじめお詫び申し上げます。:)
Swift & SpriteKit で iphone ゲームを作成していますが、現在問題に直面しています。アプリがバックグラウンドになると、一時停止関数が呼び出されますが (以下を参照)、ゲームが再開すると自動的に一時停止が解除されます。
私はこの非常に興味深い投稿を見ました: Spritekit - didBecomeActive 時にゲームを一時停止したままにする(およびアプリがアクティブになったときに SpriteKit シーンを一時停止する方法は? ) しかし、私は立ち往生しています。
ビューが以下のコードに示すように構成されているため、新しい SKView クラスを実装する方法がわかりません...
これが私のアプリケーションの仕組みです:
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!
しかし、灰色の背景シーンになってしまいます...
CBApplicationDidBecomeActive() バグが発生しないように新しい SKView クラスを実装して、アクティブになったときにゲームが一時停止しないようにする方法を知っている人はいますか?
事前にどうもありがとうございました !:)