从存储的首选项中设置首选项值

时间:2012-06-08 14:03:34

标签: iphone xcode nsuserdefaults

今天玩我的代码,

我在整个特定类中以较小的变化运行这段特殊的代码,我试图简化。效果的差异很小,但是将代码量改为数百或数千行,这对我来说将是一个巨大的个人胜利。

基本上我有一个存储为整数的值,其键为'codeKey',我想插入当前数字30061所在的那个键的值。我有点失落,有人可以帮我解决这个问题吗?

我知道我需要以某种方式回忆这个价值并将其置于其中,但我不确定它的外观。

 if ([[NSUserDefaults standardUserDefaults] integerForKey:@"buttonID"] == 1) {
        NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
        [userDefaults setInteger:30061   forKey:@"scifi1"];
        [userDefaults synchronize];}

1 个答案:

答案 0 :(得分:1)

我认为你的意思是动态保存这些信息,而不是一遍又一遍地重复相同的代码。如果这是正确的,您的解决方案将是这样的:

-(void)saveCodeKey:(int)key {

     if ([[NSUserDefaults standardUserDefaults] integerForKey:@"buttonID"] == 1) {

        NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
        [userDefaults setInteger:key   forKey:@"scifi1"];
        [userDefaults synchronize];

    }
}

现在您只需调用[self saveCodeKey:12345];假设-saveCodeKey:方法位于同一个类中。

希望这有帮助!