【发布时间】:2013-11-17 15:46:23
【问题描述】:
我创建了一个自定义类以在 TableView 中显示,我在 TableView 中读取了一个自定义类对象的数组。现在,当我关闭应用程序时,我失去了约会。我想永久保存该数据。但是当我尝试这样做时,我收到以下错误:
Attempt to set a non-property-list object as an NSUserDefaults
我的代码是:
@implementation CAChallangeListViewController
- (void)loadInitialData{
self.challangeItems = [[NSUserDefaults standardUserDefaults] objectForKey:@"challanges"];
}
- (void)applicationDidEnterBackground:(UIApplication *)application
{
[[NSUserDefaults standardUserDefaults] setObject:self.challangeItems forKey:@"challanges"];
}
在这里,自我。挑战项目是一个 NSMutable 数组,其中包含 CAChallange 类型的对象,这是一个具有以下接口的自定义类。
@interface CAChallange : NSObject
@property NSString *itemName;
@property BOOL *completed;
@property (readonly) NSDate *creationDate;
@end
【问题讨论】:
-
符合NSCoding协议并保存为NSData
标签: ios nsuserdefaults