的sizeToFit
方法UILabel
不适用于cellForRowAtIndexPath
.
问题是我需要一些细胞看起来像这样:
和其他看起来像这样:
解决方案是什么?
谢谢
的sizeToFit
方法UILabel
不适用于cellForRowAtIndexPath
.
问题是我需要一些细胞看起来像这样:
和其他看起来像这样:
解决方案是什么?
谢谢
sizeToFit 方法在在情节提要中禁用自动布局后,在 cellForRowAtIndexPath 方法中执行它应该做的事情。
我有同样的问题,我用这种方式解决了:
-(CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
UIFont *font = [UIFont fontWithName:@"Roboto-Regular" size:14];
CGSize textSize = [[eventDetails objectForKey:[detailTitle objectAtIndex: indexPath.row]] sizeWithFont:font];
CGFloat strikeWidth = textSize.width;
if(strikeWidth <280) // if the length is lower than max width
{
return 30; // normal height of cell
}
else
{
return 30 + ((int) strikeWidth/280 )*15;// if not give the cell the height you want
}
}
并且不要忘记将标签的行数设置为0[label setNumberOfLines:0];