我想将一个对象数组保存为NSUserDefault,但没有成功。在尝试之前注销数组时,它充满了对象。但是,当我尝试注销NSUserDefault时,它是NULL。任何人都可以看到我可能做错了什么?感谢您的任何建议:IOS/Objective-C:将自定义阵列保存为NSUserDefault
Items *myItems = [mutableFetchedObjects mutableCopy];
NSLog(@"my Items%@",myItems);//LOGS OUT LONG LIST OF ITEMS
NSUserDefaults *currentDefaults = [NSUserDefaults standardUserDefaults];
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:myItems];
[currentDefaults setObject:data forKey:@"myItems"];
[currentDefaults synchronize];
Items *myRetrievedItems = [[[NSUserDefaults standardUserDefaults] arrayForKey:@"myItems"] mutableCopy];
NSLog(@"my Retrieved Items%@",myRetrievedItems); //LOGS OUT AS NULL
你为什么使用'arrayForKey'?您需要检索数据并将其解压缩 – Paulw11
我不确定,但是即使它正在显示NULL,您仍在记录相同的对象? –