【发布时间】:2017-09-25 23:13:46
【问题描述】:
我试图将对象数组保存到 NSUserDefault 中,但没有成功。当我在尝试之前注销数组时,它充满了对象。但是,当我尝试注销 NSUserDefault 时,它为 NULL。谁能看到我可能做错了什么?感谢您的任何建议:
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?您需要检索数据并取消归档 -
我不确定,但您正在记录同一个对象,即使它显示为 NULL?
标签: ios nsarray nsuserdefaults