在有人说这是一个以前被问过很多次的问题之前,我已经经历了大约 20 个不同的答案并尝试了我发现的所有内容。尽管如此,我大约 5 天前才开始使用目标 c,所以可能有一些非常简单的解决方案。
似乎 NSUserDefaults 不会从默认属性列表中加载数组,尽管以许多不同的方式被调用。在我继续之前,这是我读取数组的代码:
fishArrayMutable = [[NSMutableArray alloc] initWithArray:(NSArray*)[defaults objectForKey:@"fishArray"] copyItems:TRUE];
if (fishArrayMutable == nil)
{
fishArrayMutable = [[NSMutableArray alloc] init];
UIAlertView *alert = [[UIAlertView alloc] init];
[alert setTitle:@"fishArray = nil"];
[alert addButtonWithTitle:@"Ok"];
[alert show];
[alert release];
}
这是我编写数组的代码:
[defaults setObject:fishArrayMutable forKey:@"fishArray"];
[defaults synchronize];
现在这开始成为一个非常令人沮丧的问题,我已经研究了隔离问题的方法,并得出结论,它在阅读部分。可变数组在头文件中声明。请帮忙,这已经困扰了我大约 6 个小时了......