label.lineBreakMode =NSLineBreakMode.byTruncatingMiddle
label.numberOfLines = 0 //默认是1,0表示不限制
label.adjustsFontSizeToFitWidth = true //字体大小自适应
label.allowsDefaultTighteningForTruncation = true //缩小字间距
//根据传入的字符串的字体、最大的宽和高,返回字符串实际占用的宽和高
class func getTextRectSize(text:NSString,font:UIFont,size:CGSize) -> CGRect {
let attributes = [NSFontAttributeName:font]
let option =NSStringDrawingOptions.usesLineFragmentOrigin
let rect:CGRect = text.boundingRect(with:size,options:option, attributes:attributes, context:nil)
print(“rect:(rect)”);
return rect;
}
NSLineBreakMode的枚举: