放置NSUserDefault保存/加载代码的最佳位置在哪里?

时间:2010-02-08 00:55:33

标签: iphone nsuserdefaults

使用NSUserDefaults保存/加载一些小值......这非常简单。

WHERE 我会放置我的SAVE或LOAD代码吗?

我希望仅在/显示某个视图时才能将默认值设置为LOAD。 我希望默认值为SAVE,仅当该视图退出/卸载/隐藏时。

(我使用“基于视图的模板”创建了一个简单的应用程序,并在UITextFields内部的视图上显示了我的字符串值。)

3 个答案:

答案 0 :(得分:3)

该视图viewWillAppear的{​​{1}}和dealloc / viewDidDisappear方法怎么样?

答案 1 :(得分:0)

嗯,你在谈论意见:

viewDidLoad / viewWillLoad
viewDidUnload / dealloc

似乎是个好人选。此外,在你的init方法中,特别是如果你想在那时将iVars初始化为来自NSUserDefaults的东西。

答案 2 :(得分:0)

您应该始终将代码本身放入其自己的文件对中以管理用户默认值,并且此模块应负责序列化和反序列化,尽管序列化的对象应该自己拥有该技能。您只获得viewDid Load中绝对需要的设置,以免降低初始化速度。

如果你有广泛的用户设置,数组和字典,多个会话数据,不要错误地将它们存储在单个字典和密钥下。将它们分开。

如果您的应用需要用户登录(我会对其进行大部分加密),那么只有在登录后,从最小负载的用户设置验证密码,才能继续加载较重的会话设置。无论如何,这是“用户时间”。