Swift判断字符串宽高


本文只作自用笔记,不喜勿喷,诚谢纠错。

1.将字符串转换成NSString

let messtr = "判断字符串宽高" as NSString

let width = messtr.size(attributes: [NSFontAttributeName:UIFont.systemFont(ofSize: 18)]).width

let height = messtr.size(attributes: [NSFontAttributeName:UIFont.systemFont(ofSize: 18)]).height

print(":\(width)",":\(height)")

打印结果:

:128.394 :21.4805

2.纯swift实现

let messtring:String = "判断字符串宽高"

let attributes = [NSFontAttributeName:UIFont.systemFont(ofSize: 18)] //设置字体大小

let option = NSStringDrawingOptions.usesLineFragmentOrigin

//这里有个参数1——width和参数2——heigh经测试应该是设置横向和纵向的最大计算宽度和高度,如有不妥希望指出,相互学习,谢谢。(即当宽度接近与320.0时,就会换行,通过改变高度来计算字符串长度)

let rect:CGRect = messtring.boundingRect(with: CGSize.init(width: 320.0, height: 999.9), options: option, attributes: attributes, context: nil)//获取字符串的frame

print(":\(rect.width),高:\(rect.height)")

打印结果:

:128.394,:21.4805

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM