我正在尝试使用 NSUSerDefault 保存 NSMutableArray,然后打开该数组。这里有一些代码:
-(IBAction)btnSave{
Class *aClass = [[Class alloc]init];
aClass.idClass=@"aaaxxx";
aClass.nameClass=@"hello";
[myArray addObject:aClass];
NSUserDefaults *arrayDefault=[NSUserDefaults standardUserDefaults];
[arrayDefault setObject:myArray forKey:@"savedArray"];
[arrayDefault synchronize];
}
和
- (void)viewDidLoad
{
[super viewDidLoad];
myArray=[[NSMutableArray alloc]init];
NSMutableArray *savedArray=[[NSUserDefaults standardUserDefaults]objectForKey:@"savedArray"];
if(savedArray!=NULL){
myArray=savedArray;
[tableView reloadData];
}
// Do any additional setup after loading the view from its nib.
}
当我编译并按下按钮时,这是我在日志输出中看到的内容:
[NSUserDefaults setObject:forKey:]: Attempt to insert non-property value '(
"<Class: 0x8452b40>"
)' of class '__NSArrayM'. Note that dictionaries and arrays in property lists must also contain only property values
显然,当我重新打开视图时,未加载数组。有什么帮助吗?