просто хочу знать, почему один код работать, а другой не при извлечении значения из NSUserDefaultПочему один код работает, а другой не получает NSUserDefaults?
Вот как я сохранить данные в NSUserDefaults:
let prefs = NSUserDefaults.standardUserDefaults()
prefs.setValue(user_names, forKey: "username") //storing the username "test"
это, как я извлечь NSUserDefaults информация:
let prefs = NSUserDefaults.standardUserDefaults() //preference name
let username1 = prefs.stringForKey("username") //doesn't work
let username2: [NSString]? = NSUserDefaults.standardUserDefaults().objectForKey("username") as? [NSString] //works
print(username1) //doesn't work - "nil"
print(username2) //works - "test"
может кто-нибудь объяснить мне, почему username1 не работает, но username2 работает? благодаря
тип данных USER_NAMES это? –
@ Mr.UB "test" ... – johnjay22113
@ johnjay22113 Итак, 'String'? Ваш код указывает, что это массив строк, т. Е. '[String]'.Вы пытаетесь получить как массив строк, так и одну строку из одного и того же ключа, поэтому вполне логично, что только один из них может работать - поскольку пользовательские значения по умолчанию могут содержать либо '[String]', либо 'String' для данный ключ, он не может содержать оба. – Hamish