http://www.cnblogs.com/YouXianMing/p/5823893.html
// // String+StringHeight.swift // StringHeight // // Created by YouXianMing on 16/8/30. // copyright © 2016年 YouXianMing. All rights reserved. // import UIKit extension String { /** Get the height with the string. - parameter attributes: The string attributes. - parameter fixedWidth: The fixed width. - returns: The height. */ func heightWithStringAttributes(attributes : [String : AnyObject],fixedWidth : CGFloat) -> CGFloat { guard self.characters.count > 0 && fixedWidth > 0 else { return 0 } let size = CGSizeMake(fixedWidth,CGFloat.max) let text = self as Nsstring let rect = text.boundingRectWithSize(size,options:.UsesLineFragmentOrigin,attributes: attributes,context:nil) return rect.size.height } /** Get the height with font. - parameter font: The font. - parameter fixedWidth: The fixed width. - returns: The height. */ func heightWithFont(font : UIFont = UIFont.systemFontOfSize(18),fixedWidth : CGFloat) -> CGFloat { guard self.characters.count > 0 && fixedWidth > 0 else { return 0 } let size = CGSizeMake(fixedWidth,attributes: [NSFontAttributeName : font],context:nil) return rect.size.height } /** Get the width with the string. - parameter attributes: The string attributes. - returns: The width. */ func widthWithStringAttributes(attributes : [String : AnyObject]) -> CGFloat { guard self.characters.count > 0 else { return 0 } let size = CGSizeMake(CGFloat.max,0) let text = self as Nsstring let rect = text.boundingRectWithSize(size,context:nil) return rect.size.width } /** Get the width with the string. - parameter font: The font. - returns: The string's width. */ func widthWithFont(font : UIFont = UIFont.systemFontOfSize(18)) -> CGFloat { guard self.characters.count > 0 else { return 0 } let size = CGSizeMake(CGFloat.max,context:nil) return rect.size.width } }
原文地址:https://www.jb51.cc/swift/321628.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。