我在自定义单元格中有一个UIImageView。如果单元格中没有要显示的图像,则单元格高度应自动降低。(在这种情况下,ImageView高度应为零)。如何在xib中为此指定约束?
答案 0 :(得分:0)
您的UITableView
数据源应代表此图片的存在。
您应该使用以下委托方法:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.dataSource[indexPath.rox].imageExists) {
return 50.0; // Change to your value with image
}
return 10.0; // Change to your value without image
}
答案 1 :(得分:0)
您的 UITableViewDelegate 应该实现tableView: heightForRowAtIndexPath :
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
// add your condition here if image exit or not and set cell size dynamically
return [indexPath row] * 20;
}
您可能希望使用NSString's sizeWithFont:constrainedToSize:lineBreakMode:
方法来计算行高,而不是仅仅对indexPath执行一些愚蠢的数学运算。