我遇到了一个奇怪的行为UITableView
。我已经UIViewController
用UITableView
. UITableView
包含一个tableHeaderView
, tableFooterView
, 一个节页脚视图和几个UITableViewCell
具有动态高度的 s。
问题是它tableFooterView
出现在表格中间的某个地方(悬停在单元格上),而不是在表格内容的底部对齐。显然,表格的contentSize
属性也返回了不正确的内容大小(特别是高度)。
然而,自定义部分页脚视图出现在正确的位置(在实际的下方tableFooterView
——悬停在表格中间)。
有什么想法吗?
注意:我的自定义表格视图(使用自动布局进行动态高度处理)显示“不明确的布局:2 个视图在垂直方向上不明确”。警告,但它在运行时正确调整大小。
表设置非常简单:
// Set table header/footer view
self.myTableView.tableHeaderView = self.myTableHeaderView;
self.mainTableView.tableFooterView = self.myTableFooterView;
// Table delegate methods
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return [self heightForCellAtIndexPath:indexPath];
}
- (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath {
return [MyCustomCell defaultHeight];
}
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
if (section == 0) {
return self.mySectionFooterView;
}
return [UIView new];
}
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
if (section == 0) {
return [self heightForSectionFooterView];
}
return 0.01f;
}