在NSUserDefaults中存储首选项以便稍后调用

时间:2011-04-27 12:10:04

标签: iphone xcode nsuserdefaults preferences

正在进行一些代码精简,并意识到如果我的应用程序有一个偏好系统,那将非常有用。

现在这是我的代码的工作原理。

方法基于存储在NSUserDefaults

中的整数运行

e.g。

if ([[NSUserDefaults standardUserDefaults] integerForKey:@"scifi1"] == 040){
            [self spaceDown];
        }
        else if ([[NSUserDefaults standardUserDefaults] integerForKey:@"scifi1"] == 10040){
            [self ctrldown];
            [self spaceDown];
        }

现在我要做的是当我退出视图(通过特定按钮)时将@“scifi1”的值转储到新的首选项中,例如 - 一个名为@“savedscifi1”的整数

现在我知道如何将整数保存到NSUserDefaults中,

    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
    [userDefaults setInteger:VALUEHERE forKey:@"savedscifi1"];
    [userDefaults synchronize];

但是 - 我不确定我是如何替换scifi1的值而不是(在这种情况下)'VALUEHERE' - 任何人都可以帮忙吗?我觉得这很简单,但我不禁想到我有点厚......睡眠不足,接近截止日期!我知道我不能只是打电话给@“scifi1”但超出那个...... ??

1 个答案:

答案 0 :(得分:2)

NSInteger value = [[NSUserDefaults standardUserDefaults] integerForKey: ...];
[[NSUserDefaults standardUserDefaults] setInteger: value forKey: ...];