9

我想在ios中使用二维数组,例如我想为tableview数据源准备一个数组,

UITableViewCell array[sections][rows];

像这样的东西,在这里我也不能预先声明尺寸。

谢谢

4

3 回答 3

24
NSMutableArray *dataArray = [[NSMutableArray alloc] initWithCapacity: 3];

[dataArray insertObject:[NSMutableArray arrayWithObjects:@"0",@"0",@"0",nil] atIndex:0];
[dataArray insertObject:[NSMutableArray arrayWithObjects:@"0",@"0",@"0",nil] atIndex:1];
[dataArray insertObject:[NSMutableArray arrayWithObjects:@"0",@"0",@"0",nil] atIndex:2];

这就是您从数组中选择值的方式

NSMutableArray *subArray = [dataArray objectAtIndex:2];
NSLog(@"data : %@",[subArray objectAtIndex:0]);
于 2012-05-28T12:21:51.047 回答
2

设置一个NSDictionary并使用一个NSIndexPath作为每个单元格的键

于 2012-05-28T12:38:09.737 回答
1

语法糖方法。请注意,这种方法不会自动创建NSMutableArray给定大小的 a。初始数组大小将为 0, 0。

NSMutableArray *yourArray = [@[ [@[] mutableCopy]] mutableCopy];

// add an object to the end of your array
[yourArray[section][row] addObject:@(22)];

// set/change an NSNumber object at a particular location in the 2D array.
yourArray[section][row] = @(22);

// Retrieve a value, converting the NSNumber back to a NSInteger
NSInteger result = [yourArray[section][row] integerValue];
于 2017-02-26T03:31:57.713 回答