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];
。有时需要额外的努力才能使布局正确,尤其是在需要调整文本大小时。除了我必须这样做之外,我对此没有任何解释,而且我在其他地方看到过几次。
我用不同的 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];
。有时需要额外的努力才能使布局正确,尤其是在需要调整文本大小时。除了我必须这样做之外,我对此没有任何解释,而且我在其他地方看到过几次。