要想從NSUserDefaults
的值,我會做這樣的事情:如何應對非可選值NSUserDefaults的斯威夫特
let userDefaults = NSUserDefaults.standardUserDefaults()
if let value = userDefaults.objectForKey(key) {
print(value)
}
然而,這些方法不返回選配:
boolForKey
(默認爲false
如果未設定)integerForKey
(默認爲0
如果未設定)floatForKey
(默認爲0.0
如果未設置)doubleForKey
(默認爲0.0
如果未設置)
在我的應用我想如果先前已設置爲使用一個整數的保存價值。如果它以前沒有設置,我想使用我自己的默認值。問題是0
是我的應用程序的有效整數值,所以我無法知道0
是以前保存的值還是默認的未設置值。
我該如何處理?
是的,我忘了,我改變了後 – vadian
我假設你不使用硬編碼字符串'「鍵1生產代碼中的「'和'」key2「'。在整個應用程序中訪問這些關鍵名稱的最佳位置在哪裏? – Suragch
可以將任何類之外的鍵定義爲全局變量,或者在任何類之外使用靜態結構,例如'struct Key {static let Max =「max」static let Min =「min」}'。然後你可以用'defaults.integerForKey(Key.Max)'來使用它。結構的好處是封裝數據 – vadian