Swift: 用UserDefaults保存复杂对象
一直木有看过这个细节,用UserDefaults是能不能存复杂一点的对象。大家可能都看到过UserDefaults的一个方法setObject: forKey:,用这个方法存过NSDictionary,NSArray什么的,也存过字符串。 偶然一次直接存了一个继承自JSONModel的实体类,然后就悲剧了。后来查了下苹果的文档: Thevalue parameter can be only property list objects:NSData,NSString, NSNumber,NSDate,NSArray, or NSDictionary. ForNSArray andNSDictionary objects, their contents must be property list objects. 简单来说就是setObject:forKey:方法可以存NSData,NSString什么的对象,即使是NSDictionary和NSArray内存放的元素也必须是property list objects的。具体什么是property list object看这里。关于JSON...