数据持久性 - 单例类

时间:2011-08-21 23:24:40

标签: iphone objective-c cocoa-touch core-data singleton

我有一个存储三个NSMutableArrays的单例类。每个数组存储大约4-5个自定义对象的项目,我称之为Program。如何存储当前应用程序实例之外的那些?

我应该使用核心数据吗?我认为这对Core Data来说太简单了。我已经在我的应用程序中使用Core Data来实现更复杂的存储。是否有类似NSUserDefaults的内容,我可以使用自定义对象存储这些数组并轻松检索它们?

由于

1 个答案:

答案 0 :(得分:2)

NSUserDefaults 无法存储任意对象,只能存储 NSData NSString NSNumber ,< strong> NSDate , NSArray NSDictionary 。但是,您可以将对象转换为其中一个 - 例如使用 NSKeyedArchiver

+ (NSData *)archivedDataWithRootObject:(id)rootObject 

(只需在您的Program类中实现两个NSCoding协议方法)。