16

SKScene を使い終わったら、SKScene クラス内から SKScene を閉じる方法はありますか?

SKScene を表示する Viewcontroller に戻らない場合 [skView presentScene:theScene];、シーンを再起動する方法や SKView から削除する方法はありますか?

SKSceneクラス リファレンスSKView クラス リファレンスは役に立ちません。

アップデート:

次のコードは、SKView からシーンを削除[yourSKView presentScene:nil];しますが、ビュー コントローラーに戻ったとき、シーンはまだバックグラウンドで実行されています。ゲームが終了したらいつでも一時停止でき、View Controller(メニュー)に戻されますが、完全に削除するように一時停止する以外に別の方法があるのでしょうか?

-(void)endTheGame {
    [highscoreLabel removeFromSuperview];
    NSLog(@"Game Over");
   //would like to end here before calling the below method in my view controller
    [self.delegate mySceneDidFinish:self];
}
4

7 に答える 7

11

以下を使用できます。

 [yourSKView presentScene:nil];

シーンを削除します。

于 2014-02-20T22:02:36.173 に答える
4

「シーンから「ビュー コントローラーに戻る」ことはできません。シーンはビューであり、ビュー コントローラーはビューを制御および表示します。ビュー コントローラーを使用してビューを変更します。ビュー コントローラー自体はビューではないことに注意してください。-ワービオ

ここでの最善の解決策は、別のビュー コントローラーを作成することです。このView Controllerが私のメニューになります。次に、もう一方のビューコントローラーが skscene のホストとして機能します。

私の状況では、メニュービューコントローラーを使用して、skviewに表示されているビューコントローラーを閉じます。

于 2014-08-11T18:16:08.007 に答える
2

内から、別のシーンをSKScene簡単に表示できます[self.view presentScene:aNewScene]

于 2014-02-20T21:53:10.847 に答える