Attempt to set a non-property-list object 报错问题

          NSUserDefaults只能保存诸如NSArray、NSDictionary、NSData、NSNumber等基本数据类型,如果我们强制保存自定义的类,就会出现这个错误:Attempt to set a non-property-list object as an NSUserDefaults value for ,解释起来:【试图将一个非属性列表对象设置为 NSUserDefaults】 解决办法:若是单个的值,例如此处我在工作中遇到的,将其转为NSString进行存储,但是个人觉得只是权宜之计,最好进行归档,将其转化成可以存储的内容再存储 也就是说,我们保存自定义对象时,是使用NSKeyedArchiver 把数据归档为NSData对象,然后把NSData存储到UserDefault中

你可能感兴趣的:(对象,类,class,iOS开发总结)