【发布时间】:2015-02-28 20:33:44
【问题描述】:
我在 WeatherData 数组中放入了 4 个变量输入。我的数组似乎也在适当的范围内添加它们(即 [0]-[3] 但我真的想用新信息替换当前信息。
我最初做的是:
if NSUserDefaults.standardUserDefaults().objectForKey("WeatherData") != nil {
WeatherData = NSUserDefaults.standardUserDefaults().objectForKey("WeatherData") as NSMutableArray
DisplayInfo(WeatherData[0] as String, Temperature: WeatherData[1] as Int, Code: WeatherData[2] as String, Condition: WeatherData[3] as String)
}
然后我做一些事情,最后我保存它:
WeatherData.replaceObjectsInRange(0.3, withObjectsFromArray: [placemark.locality, Temperature, Code, Condition])
NSUserDefaults.standardUserDefaults().setObject(WeatherData as NSArray, forKey: "WeatherData")
每次迭代我的数组都会变大,如下所示:
(
"San Francisco",
50,
33,
Fair,
"San Francisco",
50,
33,
Fair,
"San Francisco",
50,
33,
Fair,
"San Francisco",
50,
33,
Fair
)
但应该只是
(
"San Francisco",
50,
33,
Fair,
)
意味着内容应该被替换并保存在 NSUserDefaults 中。
提前感谢您的帮助 王牌
【问题讨论】:
标签: ios arrays swift nsuserdefaults