uilabel字符串的宽高度
2015-04-15 17:43
309 查看
今天又遇到计算字符串宽高度问题了,又去百度了好多。这次先记下一点吧。
1,如果只单纯的计算一个单行字符串的宽度的话
这样直接获得宽度 和单行高度
2,如果不只一行,那就自己设宽度限制吧。
1,如果只单纯的计算一个单行字符串的宽度的话
NSString *str=@"你好我是你我是你的号年度卡拉是大家啊啊的可垃圾的垃圾收到了就爱看"; CGSize size= [nal.text sizeWithAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:16]}];
这样直接获得宽度 和单行高度
2,如果不只一行,那就自己设宽度限制吧。
NSString *str=@"你好我是你我是你的号年度卡拉是大家啊啊的可垃圾的垃圾收到了就爱看"; CGSize size=[self boundingRectWithSize:CGSizeMake(200, CGFLOAT_MAX) withTextFont:[UIFont systemFontOfSize:16] withLineSpacing:0 with:str]; -(CGSize)boundingRectWithSize:(CGSize)size withTextFont:(UIFont *)font withLineSpacing:(CGFloat)lineSpacing with:(NSString *)usestr{ NSMutableAttributedString *attributedStr=[[NSMutableAttributedString alloc]initWithString:usestr attributes:@{NSFontAttributeName:font}]; NSMutableParagraphStyle *paragraphStyle=[[NSMutableParagraphStyle alloc] init]; [paragraphStyle setLineSpacing:lineSpacing]; [attributedStr addAttribute:NSParagraphStyleAttributeName value:paragraphStyle range:NSMakeRange(0, usestr.length)]; CGSize textSize = [attributedStr boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin context:nil].size; return textSize; } 这样应该得到要的宽度和高度了,那个NSMutableParagraphStyle *paragraphStyle现在不太清楚,好像是设置行间距的。希望再次进步。
相关文章推荐
- iOS7中计算UILabel中字符串的高度
- NSString -- UILabel中字体有多种颜色,字符串自动计算高度/换行
- iOS7中计算UILabel中字符串的高度
- iOS7中计算UILabel中字符串的高度
- 根据字符串长度计算UILabel的高度
- 获取UILabel上最后一个字符串的位置。获取文字长度和高度,自动换行
- iOS UILabel根据字符串长度自动适应宽度和高度
- iOS7中计算UILabel中字符串的高度
- 根据字符串长度动态计算UILabelView的高度
- iOS UILabel根据字符串长度自动适应宽度和高度
- iOS7中计算UILabel中字符串的高度
- iOS7中计算UILabel中字符串的高度
- iOS UILabel根据字符串长度自动适应宽度和高度
- iOS7中计算UILabel中字符串的高度
- UILabel、UITextView根据字符串动态计算高度
- iPhone获取字符串高度和宽度 以及UILabel 的换行显示
- 获取固定宽度字符串的高度,适用于自适应UILabel TableViewCell
- iOS7中计算UILabel中字符串的高度
- iOS7中计算UILabel中字符串的高度
- iOS 计算UILabel以及UIButton等控件计算宽度高度。