首页 > 代码库 > Swift - 计算文本高度
Swift - 计算文本高度
Swift - 计算文本高度
效果
源码
//// String+StringHeight.swift// StringHeight//// Created by YouXianMing on 16/8/30.// Copyright © 2016年 YouXianMing. All rights reserved.//import UIKitextension 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, CGFloat.max) let text = self as NSString let rect = text.boundingRectWithSize(size, options:.UsesLineFragmentOrigin, 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, options:.UsesLineFragmentOrigin, attributes: attributes, 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, 0) let text = self as NSString let rect = text.boundingRectWithSize(size, options:.UsesLineFragmentOrigin, attributes: [NSFontAttributeName : font], context:nil) return rect.size.width }}
Swift - 计算文本高度
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。