我已经实现了一个自定义 viewForHeaderInSection,如下所示:
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
CGRect sectionFrame = CGRectMake(0, 0, tableView.bounds.size.width, 30.0f);
float xInset = 16.0;
RTUTableHeaderView
*headerView =
[[RTUTableHeaderView alloc] initWithFrame:sectionFrame
andBackgroundColor:[UIColor clearColor]
FontColor:[RTUColorHelper kSettingsTableCellFontColor]
andFontSize:18.f
withLabelFrame:CGRectMake(xInset, 10.f, sectionFrame.size.width - xInset, 20)];
headerView.label.text = [self tableView:tableView titleForHeaderInSection:section];
return headerView;
}
这会将标签向下推 10 个点,以便它们更靠近相关部分。在 iOS6 中它看起来不错,但对于 iOS7,第一节标题中的标签比其他标签高出大约 10 个百分点。如果我去掉 10pt 偏移量,第一部分的标签位于 headerView 的顶部,而其他部分在其标题框架中垂直居中。
如果它是一个错误,我可以直接删除第 0 部分的值,但显然不想这样做,并且想检查我是否忘记了其他事情或做错了什么。
节头高度相同,heightForRowAtIndexPath 返回 44.f