/**根據顯示內容自動計算標籤的大小*/
UILabel *label2 = [[UILabel alloc]init];
label2.text = @"UILabelUUILabelUUILabelUUILabelUUILabelUUILabelUUILabelUUILabelUUILabelUUILabelUUILabelUUILabelU";
//1.設置顯示行數不做限制
label2.numberOfLines = 0;
//2.計算大小,這個是字符串方法
//參數1:sizeWithFont:指定顯示文字的字體
//參數2:constrainedToSize:限制顯示內容的最大大小(寬度,高度)
label2.font = [UIFont systemFontOfSize:20];
//這個是ios6之前的方法
CGSize size = [label2.text sizeWithFont:[UIFont systemFontOfSize:20] constrainedToSize:CGSizeMake(300, 10000) lineBreakMode:NSLineBreakByWordWrapping];
//顯示字體合適的大小
NSLog(@"%@",NSStringFromCGSize(size));
label2.frame = CGRectMake(20, 150, size.width, size.height);
//ios7以後的方法,根據一些參數的設置計算出顯示文字內容的最合適的大小
//參數1:限制的大小
//參數2:<#(NSStringDrawingOptions)#>,描畫選項:NSStringDrawingUsesLineFragmentOrigin(固定格式)
//參數3:字典,傳一個包含value字體名和key字體屬性名稱的字典
//參數4:描畫上下文,默認傳nil
NSDictionary *dic = [NSDictionary dictionaryWithObject:label2.font forKey:NSFontAttributeName];
CGRect rect = [label2.text boundingRectWithSize:CGSizeMake(300, 10000) options:NSStringDrawingUsesLineFragmentOrigin attributes:dic context:nil];
label2.frame = CGRectMake(20, 150, rect.size.width, rect.size.height);
label2.backgroundColor = [UIColor whiteColor];
NSLog(@"%@",NSStringFromCGRect(rect));