我的NSUserDefaults代码不起作用

时间:2011-12-04 02:41:37

标签: ios objective-c nsuserdefaults

当我尝试在两个不同的屏幕上使用NSUserDefaults时,NSUserDefaults不适用,并且没有出现错误。基本上,我希望只有在第一个级别完成后才能使用下一级别。

这是我的代码:

视图1:

- (void)viewDidLoad {      
    [super viewDidLoad];
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    NSInteger level1Complete = [prefs integerForKey:@"levelComplete"];

    if (level1Complete == 11) {
        button2.hidden = NO;
    }
}

视图2:

if (number11 == 5) {

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    [prefs setInteger:11 forKey:@"levelComplete"];

    [prefs synchronize];
}

请注意:游戏本身是view2,级别选择是view1。

1 个答案:

答案 0 :(得分:2)

[[NSUserDefaults standardUserDefaults] setValue:@"11" forKey:@"levelComplete"];

如果您可以将其保存为值,并在获取它时将其转换为整数。

All The Best !!