动态计算文本宽度和高度
使用场景:例如在tableView的cell中,指定Label最大宽度,高度不限,超过最大宽度则自动换行,先用这个方法来设置Label的size,然后给Label赋值String,即可得到自适应的Label
/**
* 返回UILabel自适应后的size
*
* @param aString 字符串
* @param width 指定最大宽度
* @param height 指定最大高度
* @param font 指定字体大小
* @return CGSize
*/
- (CGSize)sizeLabelToFit:(NSString *)aString width:(CGFloat)width height:(CGFloat)height font:(UIFont *)font{
UILabel *tempLabel = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, width, height)];
tempLabel.font = font;
tempLabel.numberOfLines = 0;
tempLabel.lineBreakMode = NSLineBreakByWordWrapping;
tempLabel.text = aString;
[tempLabel sizeToFit];
CGSize size = tempLabel.frame.size;
size = CGSizeMake(ceilf(size.width),ceilf(size.height));
return size;
}