我的[NSUserDefaults standardUserDefaults]
未被保存。我关闭应用程序并重新启动它的所有内容都会恢复原状。我没有我的iOS设备,所以我不确定这是否会在设备上发生,但其他应用程序都没有在模拟器中这样做,这让我相信我的代码有问题。我不知道我应该在这里包含哪些代码部分,它只是简单地在nsuserdefaults中添加/修改密钥,正如我所说它在应用程序中运行正常,但在重新启动后却没有...
我知道我可以致电synchronize
,但Apple建议不要这样做,并说如果必须的话我只能打电话给它。所以。
可能出现什么问题? 感谢。
答案 0 :(得分:7)
您的进程可能未正确终止,因此NSUserDefaults无法存储。另请参阅this,主要是this。
我链接到的第二篇文章中的建议是在synchronize
applicationDidEnterBackground:
请记住,通过在Xcode中停止来终止您的应用通常不会保存用户默认值。
答案 1 :(得分:0)
您是否从Xcode /调试器重新启动?尝试首先使用“主页”按钮将应用程序发送到后台。我认为框架会自动同步。
答案 2 :(得分:0)
我无法理解您的方式,您正在访问NSUserDefault
,您使用的sharedDefaults
NSUserDefault
的静态函数在Apple文档中不存在
使用如下方式访问NSUserDefault
[NSUserDefaults standardUserDefaults];
如需更多阅读使用NSUserDefault
的博客文章。
iPhone Programming Tutorial – Saving/Retrieving Data Using NSUserDefaults