我有一个绘图应用程序,当用户绘制并在用户关闭并重新打开应用程序时重新加载时,路径会被保存。
我将对象(画笔颜色)添加到 NSMutableArray 然后像这样保存它们:
// Adding object to NSMutableArray (this is in touchesMoved)
NSData *colorData = [NSKeyedArchiver archivedDataWithRootObject:self.brushColor];
[self.brushColours addObject:colorData];
// Saving array (this is in touchesEnded)
[defaults setObject:self.brushColours forKey:[NSString stringWithFormat:@"%@BrushColours%@", currentid, pageno]];
[defaults synchronize];
这一切都很好,很漂亮,但是当我尝试重新加载路径并设置它们的颜色时,会发生这种情况:
为什么会这样?
编辑:我正在像这样重新加载颜色(这是在每个路径的 for 循环中):
NSMutableArray *arr3 = [defaults objectForKey:[NSString stringWithFormat:@"%@BrushColours%@", currentid, pageno]];
self.brushColor = [NSKeyedUnarchiver unarchiveObjectWithData:[arr3 objectAtIndex:index]];