iOS:UITableViewCell - 单元格 interrupting/overlaying 彼此

iOS: UITableViewCell - Cells interrupting/overlaying eachother

我用不同的 costum 单元构建了一个 UITableView。一种是带有 UIImageView 的,另一种是没有的。但它们相互重叠。我已经设置了所有限制条件。

每个单元格都有自己的部分。

屏幕: (图片和文字均为示例。)

实际单元格高度有变化吗?

如果是这样,您需要确保返回正确的高度:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

    return heightOfCell;
} 

看起来您在没有图像的单元格上的约束可能有误,因为它超出了 table 认为高度建议它应该结束的位置。因此,为什么它超出了第二个单元格顶部开始的位置。

可能的问题是:

0) 您从 heightForRowAtIndexPath 返回的高度太小了。为 iOS8 使用自动布局,或者如果支持 iOS7,则需要计算高度。

1) 可能你的约束是错误的。您是否已将底部文本固定到单元格 contentView 的底部并将日期的顶部固定到 contentView 的顶部?

2) 如果使用 iOS8 自动布局,请尝试在 viewWillAppear 中添加 [self.tableView reloadData];。有时需要额外的努力才能使布局正确,尤其是在需要调整文本大小时。除了我必须这样做之外,我对此没有任何解释,而且我在其他地方看到过几次。