我想要一个If
语句,它允许我告诉我是否保存了NSUserDefaults。如何判断NSUserDefaults是否已保存?
2
A
回答
0
我想问的是询问某个特定的对象是否存储在用户的默认值中,而不知道数据是否成功保存。
用户的默认值只是一个词典,就其API而言,因此您可以尝试检索给定键的对象。如果返回的对象不是nil
,那么显然已经为该密钥存储了一些内容。相反,如果回报为nil
,则不存储任何内容,您应该加载默认对象或执行其他类型的意外事件。
5
NSUserDefaults
的要点是它可以透明地保存您的数据给您,无需您的干预,因此您无法问它是否保存了数据。
但是,您可以通过调用[[NSUserDefaults sharedUserDefaults] synchronize];
来强制它保存,它将返回BOOL
,指示保存是否成功。此方法的文档说:
由于此方法是自动 每隔一段时间调用,使用 此方法只如果你不能等待 的自动同步(用于 例如,如果你的应用程序即将 到退出),或者如果您想更新 用户,则默认为磁盘上的内容,即使您没有进行任何更改,即使是 也是如此。
相关问题
- 1. 如何判断NSManagedObject是否已保存?
- 2. 如何判断网页是否存在?
- 3. 如何判断给定对象是否使用ADO.NET保存?
- 4. 如何判断PhpStorm中的文件是否存在未保存的更改?
- 5. Javascript,html:如何判断选项框是否已设置?
- 6. 如何判断任务是否已在django-celery中排队?
- 7. 如何判断Android设备是否已关闭
- 8. 如何判断用户控件是否已完成加载vb6
- 9. 如何判断SP1是否已安装在Team Foundation Server 2008上?
- 10. 如何判断假期是否已过(每年)?
- 11. 如何判断文件是否已通过.NET更改?
- 12. 如何判断VSTO加载项是否已加载?
- 13. 如何判断stderr是否已在Windows中重定向?
- 14. 如何判断Django QuerySet是否已被评估?
- 15. TransactionScope如何判断连接是否已被列入
- 16. 如何判断一个过程是否已经结束?
- 17. 如何判断.NET 3.5 SP1是否已安装?
- 18. 如何判断hadoop namenode是否已被格式化?
- 19. 如何判断IEnumerable是否已经过评估?
- 20. 在MFC中,如何判断CComboBox是否已启用?
- 21. 如何判断表单runat = server是否已设置?
- 22. 如何判断$(window).load()/ window.onload事件是否已经被触发?
- 23. 如何判断Proguard是否已完成其工作
- 24. 如何判断spark-submit是否已成功运行?
- 25. 如何判断MFC对话框是否已创建/初始化?
- 26. 如何判断SP1是否已安装在VS2008上?
- 27. 如何判断ajax计时器是否已在page_load中关闭
- 28. 如何判断弹出窗口是否已完全加载
- 29. 自我跟踪pocos,如何判断属性是否已更改?
- 30. 如何使用shell来判断软件是否已安装?