我可以在UITableView中使用不同高度的单元格吗?

时间:2010-04-09 16:46:52

标签: iphone uitableview

我需要在表格视图中显示一些信息,其中一些信息非常平坦,而另一些信息非常大。即一个信息实际上只是一行文本,而另一个是三行文本。

据我所知,UITableView要求所有单元格的高度。那么有没有办法让细胞具有不同的高度?

2 个答案:

答案 0 :(得分:5)

是的,请参阅:

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

示例实施:

NSString *string...;
CGFloat CellWidth...;
CGSize size = [string sizeWithFont:[UIFont systemFontOfSize:14.0] 
               constrainedToSize:CGSizeMake(textWidth, MAXFLOAT) 
                   lineBreakMode:UILineBreakModeWordWrap];
CGFloat height = size.height;
if (height + 13.0) < 44.0) {
    return 44.0;
}
return height + 13.0;

答案 1 :(得分:1)

我同意paull,但如果你想要的东西不仅仅是调整高度,你也可以继承。想想你还需要什么。祝你好运,可可有时可能是一种真正的痛苦。