UILabel在iOS开发中经常用到,下面将常用的一些用法汇总,方便需要时查找。
1、根据内容计算label尺寸,一般是计算高度,代码如下:
//根据字体大小自动计算label大小
+ (CGSize)calculateLabelSizeOfContent:(NSString*)text withFont:(UIFont*)font maxSize:(CGSize)aMaxSize
{
const CGSize defaultSize = CGSizeMake(320, 22);
if (text == nil || text.length == 0) {
return defaultSize;
}
CGSize labelSize = CGSizeZero;
if ([text isKindOfClass:[NSString class]]) {
labelSize = [text sizeWithFont:font constrainedToSize:aMaxSize lineBreakMode:UILineBreakModeWordWrap];
if (labelSize.height < defaultSize.height) {
labelSize.height = defaultSize.height;
}
}
return labelSize;
}
其实主要是这句代码:
[text sizeWithFont:font constrainedToSize:aMaxSize lineBreakMode:UILineBreakModeWordWrap];
2、label尺寸不变,根据label的大小自动调整字体大小,代码如下:
myLabel.adjustsFontSizeToFitWidth = YES;
myLabel.minimumFontSize = 10.0;