我的游戏中有一个暂停菜单,当我按下我的主页按钮时,我想要切换。当我在我的游戏中时,它会起作用,但是当我按下我的主页按钮时,菜单会出现,但游戏不会暂停。
当我重新启动应用程序时,菜单仍然存在,但游戏不会暂停。当您离开并进入应用程序时,似乎spritekit会自动暂停并重新启动游戏。当我在应用程序内时,我可以完全控制它。但是当我退出/进入应用程序时,它表现得如何。
有什么建议吗?
func applicationWillResignActive(application: UIApplication!) {
// get the root viewcontroller
// toggle my pausemenu method. pause menu sets skview.paused = true
}
答案 0 :(得分:1)
发送NSNotification
至GameSceneViewController
以暂停SKScene
:
的AppDelegate:
- (void)applicationWillResignActive:(UIApplication *)application
{
// Pause sprite kit scene
[[NSNotificationCenter defaultCenter] postNotificationName:@"PauseGameScene" object:self];
}
GameSceneViewController:
- (void)viewDidLoad {
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(pauseGameScene)
name:@"PauseGameScene"
object:nil];
}
- (void)pauseGameScene {
if (self.skView.scene) {
self.skView.paused = self.skView.scene.paused = YES;
}
}