我正在编写一些代码来保存用户偏好。
enum CustomSettingsEnum: NSNumber {
case Off
case On
}
let someKey = "SOME_KEY"
func getSettings() -> CustomSettingsEnum {
var cseBool = Bool?
var cse: CustomSettingsEnum!
let settingsExists = NSUbiquitousKeyValueStore.defaultStore().boolForKey(self.someKey)
if settingsExist {
// Get the NSNumber and convert that to Bool
} else {
cse = CustomSettingsEnum.On
}
return cse
}
func setSettings(cse: CustomSettingsEnum) {
NSUbiquitousKeyValueStore.defaultStore().setObject(cse, forKey: self.someKey)
}
我在打电话setSettings()
之前打电话getSettings()
,但是打电话时getSettings()
,似乎 总是假的settingsExist
。getSettings()
为什么会这样?这是保存此类信息的最佳方式吗?