我有一个NSArray,我通过委托方法传递:
- (void)didFinishParsing:(NSArray *)array {
[self.myArray addObjectsFromArray:array];
NSLog(@"%@", self.myArray);
[self.tableView reloadData];
}
array
中只有一个对象,我希望tableView行数等于array objectAtIndex:0
中的对象数量,但我无法计算。我试过了:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [[self.myArray objextAtIndex:0] count];
}
如何获取数组中第一个(也是唯一的)对象内的对象数?
答案 0 :(得分:0)
要计算self.myArray的索引0处的数组,您的语法是正确的。您的array
变量是否设置了您的想法?
方法调用addObjectsFromArray:
会将array
的内容添加到self.myArray
的末尾。
换句话说:[array objectAtIndex:0]
将成为[self.myArray lastObject:]
如果您在count:
或[self.myArray objectAtIndex:0]
上运行[self.myArray lastObject]
时遇到问题,那么您尝试计算的对象可能为nil
,为空,而非NSArray /按照您的预期设定。
答案 1 :(得分:0)
如果您尝试在阵列中创建数组,则应使用
[self.myArray addObject: array];
这将在self.myArray中的下一个索引处添加数组。你之前用
做了什么[self.myArray addObjectsFromArray:array];
将array
的内容添加到self.myArray
,而不是将array
本身添加到self.myArray
。