それはとても奇妙です:
_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
なにそれ!? (他のすべては正常に動作しています。チェックしました。3 回確認しました。) (真剣に、これは最初に通過するようなものなので、ここでは何も問題はありません)
また、配列を使用せずに試しました:
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;
それでも同じエラー。ヘルプ!