gpt4 book ai didi

objective-c - NSUserDefaults 总是返回 1 而不是正确的整数

转载 作者:行者123 更新时间:2023-11-28 18:06:48 25 4
gpt4 key购买 nike

我试图将游戏的当前级别存储在 NSUserDefaults 中,但当我尝试将其转换为 int 时它总是返回 1。这是测试代码:

    [[NSUserDefaults standardUserDefaults] setInteger:34 forKey:@"Current Level"];
NSLog(@"default level raw: %@", [[NSUserDefaults standardUserDefaults] objectForKey:@"Current Level"]);
self.levelNum = [[[NSUserDefaults standardUserDefaults] objectForKey:@"Current Level"] intValue];
NSLog(@"default level num: %i", self.levelNum);

输出:

default level raw: 34
default level num: 1

最佳答案

只需确保在 NSUSerDefaults 上调用同步:

NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];

[defaults setInteger:34 forKey:@"Current Level"];
NSLog(@"default level raw: %@", [defaults objectForKey:@"Current Level"]);

[defaults synchronize]; // Call synchronize after set

self.levelNum = [defaults integerForKey:@"Current Level"];
NSLog(@"default level num: %i", self.levelNum);

关于objective-c - NSUserDefaults 总是返回 1 而不是正确的整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12594424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com