IOS开发中UILabel单行、多行文本计算高度、宽度的技巧
来源:互联网 发布:餐饮进销存软件免费版 编辑:程序博客网 时间:2024/05/16 01:25
感谢作者,原文地址:http://blog.csdn.net/hanhailong726188/article/details/42327725
IOS学习了一段时间了,对于这个文本内容多了需要计算高度的问题特别蛋疼,这个根本没法和Android相比啊,Android根本就不用自己费心计算宽度和高度,内部都帮你实现好了,好了,YY到此结束,遇到这么蛋疼的问题还得需要解决。
首先来看单行文本的问题:对于单行文本来说,计算CGSize就比较简单了,这里直接上代码了,如下:
NSString *content = @"欢迎来到北京";
CGSize size =[content sizeWithAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14]}];
其中14是字体大小,你可以随意指定
最后来看多行文本的显示:
首先UILabel的numberOfLines设置为0,其次通过- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(NSDictionary *)attributes context:(NSStringDrawingContext *)context方法来计算CGSize,具体代码如下:
UILabel *titleLabel = [UILabel new];
titleLabel.font = [UIFont systemFontOfSize:14];
NSString *titleContent = @"亲,欢迎您通过以下方式与我们的营销顾问取得联系,交流您再营销推广工作中遇到的问题,营销顾问将免费为您提供咨询服务。";
titleLabel.text = titleContent;
titleLabel.numberOfLines = 0;//多行显示,计算高度
titleLabel.textColor = [UIColor lightGrayColor];
CGSize titleSize = [titleContent boundingRectWithSize:CGSizeMake(kScreen_Width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14]} context:nil].size;
titleLabel.size = titleSize;
titleLabel.x = 0;
titleLabel.y = 0;
[self.view addSubview:titleLabel];
最后效果图如下:
- IOS开发中UILabel单行、多行文本计算高度、宽度的技巧
- IOS开发中UILabel单行、多行文本计算高度、宽度的技巧
- IOS开发中UILabel单行、多行文本计算高度、宽度的技巧
- IOS开发中UILabel单行、多行文本计算高度、宽度的技巧
- iOS开发动态计算cell高度或UILabel多行文本计算高度、宽度的技巧
- IOS计算UILabel单行高度、计算UILabel多行文本高度、宽度的技巧,根据文本的高度设置cell高度
- iOS开发时关于UILabel文本高度和宽度的计算问题(单行、多行)
- UILabel 多行文本及动态计算其高度
- iOS开发UILabel多行文本设置行间距
- UILabel的高度和宽度计算
- 自动计算UILabel的宽度或则高度
- iOS 计算UILabel以及UIButton等控件计算宽度高度。
- 单行,多行文本溢出
- iOS中计算UILabel中字符串的高度
- 多行文本固定高度的居中
- iOS UILabel自适应高度宽度
- iOS UILabel 自适应高度宽度
- android中TextView多行文本滚动的实现及单行走马灯实现
- 最近开发的心得1
- Java学习笔记-适配器用法
- html name标签命名规范
- 安卓Viewpager--页面切换控制
- JavaScript学习(5.5.1):跳转之标签
- IOS开发中UILabel单行、多行文本计算高度、宽度的技巧
- 常用链接
- javax.mail实现邮件发送
- android读取工程里文件并显示在界面
- apache AB参数说明
- 乱码解决方法
- 单链表的前插法
- iOS 7 跳过的一个坑又掉里了 - 图片渲染模式
- kafka producer demo 生产者