开发者社区 问答 正文

给NSMutableArray创建独立实例

需要一份NSMutableArray的复制,所以我用mutableCopy方法。但是我发现如果修改了复制品中的数据,原版也会跟着改变。不知道其他创建NSMutableArray的方法是什么?

delegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];
 self.mainImagesArray = [[NSMutableArray alloc]initWithArray:[delegate.arrayForCarCaptureImages mutableCopy]];

修改代码:

UIImage *filteredImage =[[[[self.mainImagesArray objectAtIndex:i]valueForKey:valueVheck] objectAtIndex:j]  copy];
filteredImage =[filteredImage brightness:(1+sliderValue-0.5)];
[[[self.mainImagesArray objectAtIndex:i]valueForKey:valueVheck]removeObjectAtIndex:j];
[[[self.mainImagesArray objectAtIndex:i] valueForKey:valueVheck]insertObject:filteredImage atIndex:j];

一旦执行arrayForCarCaptureImages也会自动改变。

展开
收起
爵霸 2016-03-23 10:35:55 1747 分享 版权
1 条回答
写回答
取消 提交回答
  • `NSArray *copiedArray = [[NSArray alloc] initWithArray:[otherArray copy]];
    `

    2019-07-17 19:10:27
    赞同 展开评论
问答地址: