在下面的代码中,我尝试从plist中读取数据:
-(void)readPreferences { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSMutableArray * myAppDefaults = [defaults mutableArrayValueForKey:@"LastList"]; myCustomObject * savedObject; NSUInteger i; for (i = 0; i < [myAppDefaults count]; i++) { NSArray * thisArray = [myAppDefaults objectAtIndex:i]; savedObject.value1 = [thisArray objectAtIndex:0]; savedObject.value2 = [thisArray objectAtIndex:1]; savedObject.value3 = [thisArray objectAtIndex:2]; savedObject.value4 = [myAppDefaults objectAtIndex:3]; [objectsArray addObject:savedObject]; } }
不知何故,当我尝试设置"savedObject.value1"时,我收到"EXC_BAD_ACCESS"错误.
我意识到这很可能是基本的内存管理,或指针/对象的混乱,但我还在学习.我希望有人可以帮助我.最好的问候Sjakelien
您savedObject
在设置value1
属性时尚未初始化.您需要添加:
savedObject = [[myCustomObject alloc] init];
在for
循环之前,为了使它成为可以设置属性的有效对象.