iphone - 如何延迟保存数据?

标签 iphone objective-c ios

我想知道 iOS 是否允许执行以下操作:

我有一个益智游戏,我一直致力于在用户返回主屏幕时保存数据。为此,我使用 NSNotificationCenter 让我的游戏类之一观察 [UIApplication sharedApplication]ApplicationWillResignActive 方法,以便在发生这种情况时保存我的游戏状态。但是,如果用户决定在动画进行时退出,游戏将保存模型值仍在变化的 midState,这通常会导致崩溃。我的问题是是否可以以某种方式延迟保存过程(即使它在后台)直到动画完成(或某些变量等于 1)?

我的第一个想法是使用 NSTimer 创建预定事件并尝试保存,直到一切都设置完毕。任何想法,将不胜感激。谢谢

最佳答案

您可以使用performSelector:withObject:afterDelay:

// Call doSomething after a 1 second delay
[self performSelector:@selector(doSomething) withObject:nil afterDelay:1.0f]; 

关于iphone - 如何延迟保存数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9488998/

相关文章:

iphone - NSObjCMessageLoggingEnabled 与 iPhone 3.0

ios - Xcode 6.3 无法为我的 ViewControllers 选择类

objective-c - 在 Objective-C 中是否需要一个类来覆盖 +alloc?

ios - 大文件的 RNCryptor 内存问题

ios - 在我的应用程序中获取其他应用程序图标图像

ios - 可能带有加载不同 url 的菜单按钮的 webview?

ios - 获取设备信号强度

iphone - iOS 将数据从 tableview 传递到新 View

iPhone 油漆桶

objective-c - 如何在 Objective C 中获取这些对象数组中的对象的属性?