多维数组动态创建



我想在目标c中添加创建一个二维数组,例如int a[0][i],就像这个未指定数量的列一样。我有一个普通的NSMutableArray,其中包含图像。现在我需要的是,如果我第一次拍摄3张照片,它必须保存在第0列中,然后我将再拍摄4张照片,必须保存在第一列中。最初,如果我拍摄3张照片,这些图像将首先保存在名为"image_name"的NSMugableArray中。现在,这组图像必须移动到索引路径0,然后第二次我将拍摄2张照片,例如,它必须保存在索引路径1中,它必须继续。

索引路径必须是未指定的,我必须将名为"image_name"的NSMutableArray中的一组图像插入索引路径0,然后清除"image_name"阵列。现在捕获一组图像移动到索引路径1,它必须继续吗?

请帮助如何创建动态二维数组?

不要将图像存储在您的NSMutableArray中,而是存储其他包含图像的NSMutableArray。

NSArray *my2DImageArray = @[ @[ image00, image01, image02 ], @[ image10, image11, image12 ], @[ image20, image21 ], @[ image30 ], ];

请检查以下代码,

对于主阵列,您必须创建一个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,并将其行保存到最终的图像数组中。

每当u捕获第一个图像时,首先分配arrImage_Name,然后进行下一个处理。

arrFinal最终将在您完成或导航到下一个屏幕时发布我希望它能帮助你。

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]

您可以创建一个主数组,在新创建的数组中添加一组图像,并将此本地数组添加到主数组中。

相关内容

  • 没有找到相关文章