我有一个UITableView
(分组!),需要计算两种样式的单元格的高度:UITableViewCellStyleDefault
和UITableViewCellStyleValue2
。
这就是我这样做的方式UITableViewCellStyleDefault
:
CGSize textSize = {300.f, 200000.0f};
CGSize size = [myTextString1 sizeWithFont:[UIFont systemFontOfSize:14.0f] constrainedToSize:textSize lineBreakMode:UILineBreakModeWordWrap];
size.height += 30.0f;
result = MAX(size.height, 44.0f);
对于UITableViewCellStyleValue2
:
CGSize textSize = {207.f, 200000.0f};
CGSize size = [myTextString2 sizeWithFont:[UIFont systemFontOfSize:14.0f] constrainedToSize:textSize lineBreakMode:UILineBreakModeWordWrap];
size.height += 30.0f;
result = MAX(size.height, 44.0f);
我的问题是他们返回的高度不正确,我认为这是textSize
我使用错误数字的地方。对于长文本,底部会被缩短(通常只是一行有几个单词),并且对于这两种 CellStyles,它们在单元格中的文本上方和下方都有奇怪的间距。
因为UITableViewCellStyleValue2
我通过207.0f
将 text.backgroundColor 设置为红色然后只计算框的大小得到了宽度大小 ( )。300.0f
宽度UITableViewCellStyleDefault
是单元格的大小UITableViewStyleGrouped
。
有谁知道我需要使用哪些值来正确计算 an 的大小,NSString
从而为我的单元格获得合适的高度?
谢谢