太诡异了:
_tableDataSectionTitles 是这个 UITableViewController 子类和 NSArray 的一个属性。
-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
NSLog(@"%@", _tableDataSectionTitles); // returns: ( "string" )
NSLog(@"%@", [_tableDataSectionTitles objectAtIndex:0]); // returns: "string"
NSLog(@"%i", section); // returns 0
NSLog(@"%@", [_tableDataSectionTitles objectAtIndex:section]; // returns "string"
return [_tableDataSectionTitles objectAtIndex:section]; // returns: *** -[__NSArrayI objectAtIndex:]: index 0 beyond bounds for empty array
那是怎么回事!?(其他一切工作正常。我检查了三次。)(说真的,这就像它运行的第一件事,所以这里应该没有错)
即使使用数组,我也试过了:
NSString *rep = [[NSString alloc] init];
if (section == 0) {
rep = @"Stuff";
} else { // doesn't even need it - it won't run through it anyway
//rep = [_tableDataSectionTitles objectAtIndex:section]; // commented out just to not have any doubts
}
return rep;
但仍然是同样的错误。帮助!