我正在使用 - (void)applicationWillTerminate :( NSNotification *)通知在我的游戏退出时保存数据,然后在用户下次按下加载按钮时加载它。保存和加载工作正常,但我注意到当我按下主页按钮和保存数据之间存在一些延迟。每当我退出,重新启动和加载时,游戏的计时器一直在滴答作响,并且在调用applicationWillTerminate之前状态正在改变;例如运动中的游戏对象被加载到不同的位置,然后我上次看到按下主页按钮。有趣的是,如果我快速按下主页按钮...它似乎退出了应用程序的退出,并弹出音乐控件。但是,如果我再次加载数据时以这种方式退出,则计时器不会继续 - 游戏对象不会随着速度而移动。 有办法解决这个问题吗?

有帮助吗?

解决方案

你看过 UIApplicationWillResignActiveNotification 吗?在“主控制器”或 UIApplication 子类中的加载/初始化时,如下所示:

[[NSNotificationCenter defaultCenter] addObserver:self /* or whatever */ selector:@selector(applicationWillTerminate:) name:UIApplicationWillResignActiveNotification object:NULL];
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top