下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
在实际的代码应用中,我们常常需要计算,特定文本的宽度和高度。然后,根据长度和宽度值,动态的设置容器(如:UILabel)的长和宽来进行适应。
假如:我们有如下一段文本。
1.计算文本的宽度
NSMutableDictionary *dic = [NSMutableDictionary dictionaryWithObject:[UIFont systemFontOfSize:14] forKey:NSFontAttributeName]; CGSize size = [strText boundingRectWithSize:CGSizeMake(MAXFLOAT,0.0) options:NsstringDrawingUsesLineFragmentOrigin attributes:dic context:nil].size;
2.计算文本的高度
NSMutableDictionary *dic = [NSMutableDictionary dictionaryWithObject:[UIFont systemFontOfSize:14] forKey:NSFontAttributeName]; CGSize size = [strText boundingRectWithSize:CGSizeMake(100.0,MAXFLOAT) options:NsstringDrawingUsesLineFragmentOrigin attributes:dic context:nil].size;
这样,用boundingRectWithSize:方法得到了,长度和宽度,就可以对容器的大小进行控制。 关于NSLineBreakMode枚举类型,如下所示,已经讲的很清楚了,就不赘述了。 typedef NS_ENUM(NSInteger,NSLineBreakMode) { NSLineBreakByWordWrapping =0,NSLineBreakByCharWrapping,NSLineBreakByClipping,NSLineBreakByTruncatingHead,NSLineBreakByTruncatingTail,NSLineBreakByTruncatingMiddle }NS_ENUM_AVAILABLE_IOS(6_0);
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。