我现在正在开发几个表格视图。我觉得浪费时间一直在实施heightForRowAtIndexPath
。有没有办法将高度默认为行的最大元素y
值,这显然是从cellForRowAtIndexPath
添加默认填充构造的?
我问自己,为什么这个方法不在默认的iOS中,如果cellForRowAtIndexPath
耗费大量内存,开发人员可能会覆盖此方法。
答案 0 :(得分:0)
以下代码显示了我们如何实现对heightForRowAtIndexPath
的调用:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{
NSString *text = [items objectAtIndex:[indexPath row]];
CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 20000.0f);
CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
CGFloat height = MAX(size.height, 44.0f);
return height + (CELL_CONTENT_MARGIN * 2);
}