如何使用NSUserDefaults更新密钥的数据

Csa*_*abi 1 iphone xcode cocoa objective-c nsuserdefaults

嗨,我想更新密钥的数据,但它仍然保持不变我的代码是:

NSUserDefaults *userNamePrefs = [NSUserDefaults standardUserDefaults];

    [userNamePrefs removeObjectForKey:@"mykey"];

    [userNamePrefs setObject:@"myNewStringValue" forKey:@"mykey"];
Run Code Online (Sandbox Code Playgroud)

但它不起作用它不删除对象而忽略为键添加新值,请帮助我缺少什么

谢谢

Vla*_*mir 12

试着打电话

[userNamePrefs synchronize];
Run Code Online (Sandbox Code Playgroud)

在您进行更新后

  • 更多关于[userNamePrefs synchronize]; 因为此方法是定期自动调用的,所以只有在您无法等待自动同步时(例如,如果您的应用程序即将退出)或者您希望将用户默认值更新为磁盘上的内容,请使用此方法你没有做任何改变. (4认同)