我在我的Sprite Kit应用中遇到了一个问题,我的NSUserDefaults
变量不起作用。在createSceneContents
方法中(我知道它被调用了)。
if (![defaults objectForKey:@"obj"]) {
difficultyLabel.text = @"Difficulty: Easy";
[defaults setObject:@"Easy" forKey:@"obj"];
} else {
difficultyLabel.text = [NSString stringWithFormat:@"Difficulty: %@", [defaults objectForKey:@"diff"]];
}
然后当您点击SKLabelNode
以更改难度时,将调用此代码
if ([label.text isEqualToString:@"Difficulty: Easy"]) {
label.text = @"Difficulty: Hard";
[defaults setObject:@"Hard" forKey:@"obj"];
NSLog(@"%@",[defaults objectForKey:@"obj"]);
} else {
label.text = @"Difficulty: Easy";
[defaults setObject:@"Easy" forKey:@"obj"];
NSLog(@"%@",[defaults objectForKey:@"obj"]);
但是当我停止程序并重新运行时,它总是只显示难度为简单。有什么建议吗?