我最近想从用户默认值中存储和检索NSArrays,我找到并使用了Storing custom objects in an NSMutableArray in NSUserDefaults的建议,该工作正常。
然而,回想起来,如果您使用标准集合类而不是自定义对象,那么这似乎有点过分。任何人都可以确认我使用的建议解决方案(上面链接)的主要好处是你可以用这种方式存储自定义类,但是用于处理内容是字符串或其他数组或标准字典的NSArray
,NSKeyedArchiver
这种方法是不必要的吗?
答案 0 :(得分:2)
是的,请参阅:{/ 1}}文档:
value参数只能是属性列表对象:NSData,NSString,NSNumber,NSDate,NSArray或NSDictionary。对于NSArray和NSDictionary对象,它们的内容必须是属性列表对象。
如果您需要将对象转换为NSUserDefaults
,则只需使用NSCoder
NSKeyedArchiver
{/ 1}}。