我一直在努力使用数组;我试图将一些数组保存到用户默认值。我的数组是String,Double和UIImageView类型。我宣布他们是这样的:
var nameHospital = [String]()
var distanceBetweenLocations = [Double]()
var images = [UIImage]() // <-- Haven't tried with this yet
我尝试将它们保存在像这样的UserDefault中......
UserDefaults.standard.set(nameHospital, forKey: "name")
并像这样调用主题
UserDefaults.standard.object(forKey: "name")
然后,当我想要打印它们以查看它是否有效时,它只打印一个值(For Cycle的最后一个值)然后我在for中设置我的打印并且正如我所料,它打印了值然后被替换它用于下一个值,依此类推。
我做错了什么?如何分别调用每个值以获得更多功能?我怎么能用我的UIImage阵列做到这一点?谢谢你的回答。
答案 0 :(得分:0)
你会看到这一个:NSUserDefault
保存:
let kUserDefault = NSUserDefaults.standardUserDefaults()
kUserDefault.setObject(["KIRIT" , "MODI" , "FIRST" , "LAST"], forKey: "nameArray")
kUserDefault.synchronize()
阅读:
kUserDefault.arrayForKey("nameArray")!
kUserDefault.objectForKey("nameArray")!
kUserDefault.valueForKey("nameArray")
适用于Swift 3
let kUserDefault = UserDefaults.standard
kUserDefault.set(["KIRIT" , "MODI" , "FIRST" , "LAST"], forKey: "nameArray")
kUserDefault.synchronize()
let data = kUserDefault.array(forKey: "nameArray")! as? [String] ?? [String]()
print(data)
了解更多信息,请访问store value in userDefaults