iPhone游戏保存

时间:2011-06-15 20:16:21

标签: iphone objective-c

如何在iPhone游戏中保存游戏状态?我在NSDictionary中拥有一切。有人说使用NSUserDefaults,但这似乎意味着像卷。我找不到任何使用游戏保存的官方示例代码。保存游戏状态的苹果方式是什么?

5 个答案:

答案 0 :(得分:3)

如果您只想将dict保存为文件夹文件夹,那么这样就可以了:

NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString* documentDir = [documentPaths objectAtIndex:0];
    NSString * savePath = [documentDir stringByAppendingPathComponent:@"save.plist"];
    [dict writeToFile: savePath atomically: YES];

答案 1 :(得分:1)

这取决于。 NSUserDefaults适用于少数或小事,但对于较大的事情,您可能需要查看CoreData。

答案 2 :(得分:1)

如果您使用Core Data管理所有州,那么您可以免费保存和加载。这就是大多数iPhone应用程序用作数据存储的原因,以及它存在的原因。

从NSDictionary到Core Data的转换非常简单,但您需要了解Core Data的工作原理并定义您的方案。

NSUserDefaults 应该用于保存游戏状态之类的内容,它可用于保存设置等内容。

答案 3 :(得分:0)

存档用于在IOS中保存对象图。您可以通过归档来恢复完整保存的状态。

答案 4 :(得分:0)

还有NSKeyedArchiverNSUserDefaults更灵活,但没有CoreData那么强大。