【发布时间】:2011-07-21 15:45:22
【问题描述】:
我很抱歉我的英语不好,但我试图用最好的词来解释。
当我尝试在 NSUserDefaults 中插入 NSMutableArray 时遇到了一些问题([NSUserDefaults setObject:forKey:]: Attempt to insert non-property value ')
我插入数组的代码如下:
-(void)saveToUserDefaults:(NSMutableArray*)myArray
{
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];
NSArray *array = [[NSArray alloc ] initWithArray:myArray];
if (standardUserDefaults)
{
[standardUserDefaults setObject:array forKey:@"MyArray"];
[standardUserDefaults synchronize];
}
}
我检索数组的代码:
-(NSMutableArray*)retrieveFromUserDefaults
{
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];
NSMutableArray *val = [[NSMutableArray alloc]init];
if (standardUserDefaults)
val = [NSMutableArray arrayWithArray:[standardUserDefaults arrayForKey:@"MyArray"]];
return val;
}
在我的代码中:
NSMutableArray:
series = [[NSMutableArray alloc]initWithObjects:nil];
//add some object inf my array...
保存我的 NSMutableArray:
[self saveToUserDefaults:series];
检索我的 NSMutableArray :
series = [self retrieveFromUserDefaults];
我认为这不是最好的方法,所以如果有人有想法,它会对我有所帮助。
感谢阅读。
汤米
【问题讨论】:
-
我能有完整的实现代码吗