3

我有一个应用程序,我需要一个 BOOL 值才能在启动过程中持续存在。

首次启动时该值应为 YES,此后用户可自定义。

但是如果是第一次启动,如何在程序运行前将默认设置为YES呢?

4

2 回答 2

6

您需要在每次启动应用程序时使用 NSUserDefaults 注册默认值字典:

NSDictionary *defaultValues = [NSDictionary dictionaryWithObject:
    [NSNumber numberWithBool:YES] forKey:@"myUserDefaultsKey"];
[[NSUserDefaults standardUserDefaults] registerDefaults:defaultValues];

现在,

[[NSUserDefaults standardUserDefaults] boolForKey:@"myUserDefaultsKey"];

如果密钥不存在,将返回 YES。

于 2010-03-11T11:24:12.237 回答
2

一种解决方案是在您的应用程序中包含一个具有默认值的 plist 文件。如果首选项不可用(首次启动),则只需从默认 plist 文件创建它们...

于 2010-03-11T11:24:33.823 回答