我试图创建一个数字数组,以后将用它来确定tableviewcell的大小。
但是我在数组上遇到了一些问题,在我的while语句之后,它返回为NULL,但是当我记录从对象数组中获取的值时,它们是正确的……并且if语句可以完美地工作。
这是我的代码
int count = 0;
// Cell heights
int smallCell = 69;
int largeCell = 120;
NSNumber *currentHeight = [[NSNumber alloc] init]; // allows int to be stored into NSArray
while (count < seriesSearchArray.count) {
myObj = (SeriesSearchResultItem*)[dataArrayOfObjects objectAtIndex:count];
if (![myObj.seriesNote isEqualToString:@""]) {
NSLog(@"%@", myObj.seriesNote);
currentHeight = [NSNumber numberWithInt:largeCell];
NSLog(@"%@", currentHeight); // correct value shown
[heightArray addObject:currentHeight];
}
else {
currentHeight = [NSNumber numberWithInt:smallCell];
NSLog(@"%@", currentHeight); // correct value shown
[heightArray addObject:currentHeight];
}
NSLog(@"%@", heightArray); // NULL Shown
count ++;
}
这样就可以了,如果我试图从可以工作的数组中的每个对象获取值,则if语句可以完美地工作,但是当我尝试将它们添加到新数组中时,它总是返回为NULL。
最佳答案
移动评论以回答
你需要类似的东西
heightArray = [NSMutableArray arrayWithCapacity:seriesSearchArray.count]