Я испытываю дополнительный разрыв между TTableTextItems в TTSectionedDataSource под iOS5, этот же код не показывает дополнительное пространство под iOS 4. Вы можете увидеть это на изображении ниже.левая сторона - IOS 4.3, а правая - iOS5.
Мой код TTTableViewController:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
self.variableHeightRows = NO;
self.tableViewStyle = UITableViewStyleGrouped;
self.autoresizesForKeyboard = YES;
}
return self;
}
- (void) createModel {
self.dataSource = [[[NewDataSource alloc] init] autorelease];
}
- (id<UITableViewDelegate>)createDelegate {
return [[[NewTableDelegate alloc] initWithController:self] autorelease];
}
Код TTTableViewDelegate:
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
if (section == 0) {
return 70 ;
}
return 200;
}
И мой TTSectionedDataSource:
- (void) tableViewDidLoadModel:(UITableView *)tableView {
[super tableViewDidLoadModel:tableView];
[self.sections addObject:@"Section 1"];
[self.items addObject:[NSArray arrayWithObject:[TTTableTextItem itemWithText:@"TTTableTextItem1" URL:@""]]];
[self.sections addObject:@"Section 2"];
[self.items addObject:[NSArray arrayWithObject:[TTTableTextItem itemWithText:@"TTTableTextItem 2" URL:@""]]];
}
Проблема возникает из-за того, что метод - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
в TTTableViewDelegate
вызывается 2 раза (со значениями 1 и 0) под iOS4 и вызывается4 раза (значения 1,1,0 и 0) в iOS5, поэтому я вижу дополнительный разрыв между TTTableTextItems.
Любые идеи о том, почему это происходит и как это предотвратить?