我到处寻找,无法找到如何使用registerDefaults()的解释。每个询问如何设置默认值的帖子都通过“use registerDefaults()”来回答,我遇到的一个小问题是我不知道如何使用registerDefaults()。有人能告诉我到底要编写什么代码以及放置它的位置。我的问题:我有5个值(Int)需要具有特定的默认值,但稍后可以由用户更改。我查了Xcode文档,youtube和谷歌,找不到答案。
答案 0 :(得分:8)
只需传递键值对词典:
NSUserDefaults.standardUserDefaults().registerDefaults([
"SomeKey" : 123,
"SomeArrayKey" : [1, 2, 3, 4, 5]
])
答案 1 :(得分:5)
@Kirsteins已经发布了代码,但这是想法。
RegisterDefaults为NSUserDefaults
中的一个或多个键创建起始值,"默认默认值为",如果愿意的话。
您希望在调用程序的过程中尽早调用registerDefaults,以便在尝试从默认值中读取任何值之前确定将注册默认值。
我通常将它们放在我的app委托的initialize(class)方法中,因为在应用委托甚至实例化之前调用initialize方法。
只需创建您想要作为默认值的键/值对的字典,然后调用NSUserDefaults.standardUserDefaults().registerDefaults
。
总而言之,您的代码(在您的app委托类中)可能如下所示:
class func initialize()
{
let initialDefaults: NSDictionary =
["firstKey": true,
"answerToLifeKey": 42,
"airspeedVelocityKey": "European or African"
]
NSUserDefaults.standardUserDefaults().registerDefaults(initialDefaults)
}