我想在目标c中添加创建二维数组,例如int a[0][i]
,就像这个未指定数量的列一样。我有一个普通的NSMutableArray包含图像。现在我需要的是如果我拿一个3照片第一次必须保存在第0列,然后我将拍摄另外4张照片,它必须保存在第1列中。如果我拍摄3张照片,这些图像首先保存在名为" image_name&#的NSMutableArray中34;现在,一堆图像必须移动到索引路径0,然后第二次我将拍摄2张照片,它必须保存在索引路径1中,并且必须继续。
索引路径必须是未指定的,我必须从名为" image_name"的NSMutableArray中插入一堆图像。索引路径0然后清除" image_name"数组现在捕获一堆图像移动到索引路径1,它必须继续前进?
请帮助如何创建动态二维数组?
答案 0 :(得分:0)
不是将图像存储在NSMutableArray中,而是存储其他包含图像的NSMutableArrays。
NSArray *my2DImageArray = @[
@[ image00, image01, image02 ],
@[ image10, image11, image12 ],
@[ image20, image21 ],
@[ image30 ],
];
答案 1 :(得分:0)
NSMutableArray *firstDimensionArray = [[NSMutableArray alloc] init];
NSMutableArray *oneArray = [[NSMutableArray alloc] init];
NSMutableArray *twoArray = [[NSMutableArray alloc] init];
NSMutableArray *threeArray = [[NSMutableArray alloc] init];
[firstDimensionArray addObject:oneArray];
[firstDimensionArray addObject:twoArray];
[firstDimensionArray addObject:threeArray];
//Edit: added anObject declaration to avoid xCode warnings/errors in case of copy/pasting...
NSObject *yourObject;
// Insert an object in the 'threeArray'
//Edit 2: added cast
[(NSMutableArray *)[firstDimensionArray objectAtIndex:2] addObject:yourObject]
答案 2 :(得分:0)
请检查以下代码,
对于主阵列,您必须创建一个NSMutableArray
,您需要在第一时间进行初始化。
NSMutableArray *arrFinal=[[NSMutableArray alloc] init];
现在对于您捕获的图像,创建一个数组,让我们说
NSMutableArray *arrImage_Name=[[NSMutableArray alloc] init];
现在,无论何时捕获图像,都将其添加到数据中,
[arrImage_Name addObject:Image1];
[arrImage_Name addObject:Image2];
[arrImage_Name addObject:Image3];
现在将其添加到主数组
[arrFinal addObject:arrImage_Name];
然后释放arrImage_Name。
[arrImage_Name release];
arrImage_Name=nil;
每次捕获图像时都必须使用arrImage_Name,并将其排成行以将其保存到最终图像数组中。
每当你捕获第一个图像时,首先分配arrImage_Name,然后进行下一个处理。
arrFinal将在您完成或导航到下一个屏幕后最终发布 我希望它会对你有所帮助。
答案 3 :(得分:0)
您可以创建一个主数组并在新创建的数组中添加一组图像,并将此本地数组添加到主数组中。