如果我正在定制UITableViewCell
并且我需要它根据输入的长度(例如,对于 Twitter 阅读器或其他东西)具有可变的高度,我怎样才能使它工作?
我在这里找到了许多其他示例,可以将其设置为标准的非自定义单元格,但我的单元格的主文本标签更小,等等,所以当我尝试在我的单元格上使用这些方法中的任何一种时,它们给出各种奇怪的结果(文本与单元格底部重叠等)
是否有设计单元格的标准化方法(例如,我应该在 Interface Builder 中制作多高?),假设我的标签是该单元格宽度的一半。我将如何计算单元格的高度需要显示加载到该标签中的字符串吗?这是我在这里找到的一种方法,它在普通单元格上运行良好,但是用奇怪的高度、重叠的文本等搞砸了自定义的:(我完全不知道 300 / 200000 在这里做什么,如果有人能解释一下我'我也感激不尽!)
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
CGSize textSize = {300.f, 200000.0f};
CGSize size = [[_quoteStringsFromPlist objectAtIndex: indexPath.row] sizeWithFont: [UIFont systemFontOfSize:12.0f] constrainedToSize: textSize lineBreakMode: NSLineBreakByWordWrapping];
size.height += 5.0f;
float result = MAX(size.height, 32.0f);
return result;
}