如果应用程序关闭时如何保存值

时间:2010-07-05 01:03:00

标签: iphone state-machine object-persistence

我是iPhone编程的新手..

我的应用就像一个测验..它有不同类型的测验,每个测验类型都有很多问题 我想在关闭应用程序时保存像字符串(测验名称)和整数(问题编号)这样的值 所以当应用程序重新启动时,我想通过使用保存的值

继续它停止的位置

如何做到这一点......?

任何人都可以帮我这样做....

谢谢你

3 个答案:

答案 0 :(得分:1)

保存字符串:

NSString *name = @"John";
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
[prefs setObject:name forKey:@"Name"];

加载字符串:

NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
NSString *name = [prefs stringForKey:@"Name"];

阅读详情:http://developer.apple.com/mac/library/documentation/Cocoa/Reference/Foundation/Classes/NSUserDefaults_Class/Reference/Reference.html

答案 1 :(得分:0)

我建议您查看核心数据并在输入时保存答案。然后,当应用程序重新启动时,您需要找到一种快速加载相关数据的方法(实际上,您会发现不需要加载那么多,这也可以帮助您减少需要保存的内容。)

请记住,简单是至关重要的,延迟加载非常有用。在您需要之前,请不要加载任何您不需要的东西。

一个很好的Apple例子是他们用iPhoneOS 2.0提供的SQLiteBooks示例(我不知道他们是否还提供它)。

答案 2 :(得分:0)

NSUserDefaults有助于保存状态和偏好。