我需要保存一个类型的变量:
var array1: [AnyObject!] = []
我试过了,但没有保存:
var key = "keySave"
var defaults = NSUserDefaults.standardUserDefaults()
array1.append(["key1": "val1", "key2": "val2"])
array1.append(["key2": "val3", "key4": "val4"])
defaults.setObject(array1, forKey: key)
defaults.synchronize()
是否需要将此变量转换为其他类型的数据?什么是正确的形式?
谢谢!
这是不允许的。根据该文件的NSUserDefaults
类,只有这些特定类型上受支持的setObject:forKey:
方法:
值参数可以是唯一的财产清单对象:
NSData
,NSString
,NSNumber
,NSDate
,NSArray
,或NSDictionary
。对于NSArray
和NSDictionary
对象,其内容必须是属性列表对象。
您可以通过将Swift数组替换为NSMutableArray
,以允许的NSArray
类的子类来解决此问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句