This is driving me crazy! I keep crashing with this error. Below is my code. I am trying to put an extra cell in my UITabelView for a “25 more” feature. But I crash below inside of the heightForRowAtIndexPath function. What am I overlooking?
TIA.
[NSMutableArray objectAtIndex:]: index
4294967295 beyond bounds [0 .. 8]’0 CoreFoundation
0x01338be9 __exceptionPreprocess + 185
1 libobjc.A.dylib
0x0148d5c2 objc_exception_throw + 47
2 CoreFoundation
0x0132e6e5 -[__NSArrayM
objectAtIndex:] + 261 3
mackdabMobile
0x00004f56
-[AllmackTableViewController tableView:heightForRowAtIndexPath:] +
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{
NSLog(@"IndexRow int: %i", indexPath.row);
NSLog(@"postsArray count: %i", [postsArray count]);
if(indexPath.row < [postsArray count]){ **<----Where it crashes**
Post *myPost = [postsArray objectAtIndex:[indexPath row] - 1];
NSString *text = myPost.description;
CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 88.0f);
CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
CGFloat height = MAX(size.height, 35.0f);
return height + (CELL_CONTENT_MARGIN * 2) + 28.0f;
}else{
return 100.0f;
}
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
// Return 1 section which will be used to display the giant blank UITableViewCell as defined
// in the tableView:cellForRowAtIndexPath: method below
if ([self.postsArray count] == 0){
return 1;
} else if ([self.postsArray count] < 25) { //self.webServiceDataModel.total
// Add an object to the end of the array for the "Load more..." table cell.
NSLog(@"postsArray count: %i", [postsArray count]);
return [self.postsArray count] + 1;
NSLog(@"postsArray count after +1: %i", [postsArray count]);
}
// Return the number of rows as there are in the postsArray Post data is empty.
return [self.postsArray count];
}
[indexPath row] - 1is the problem,For indexpath.row=0 it will be -1.
[array objectAtIndex:-1]is exception. So crash occurs.