美文网首页
(UILabel) - 测算Label显示文字所需高度

(UILabel) - 测算Label显示文字所需高度

作者: 粒粒皇 | 来源:发表于2018-03-27 11:09 被阅读0次
        // MARK: - 测算Label显示文字所需高度
        /// 测算Label显示文字所需高度
        ///
        /// - Parameters:
        ///   - width: 给定宽度
        ///   - font: 字号
        ///   - lineSpacing: 行间距
        ///   - kern: 字间距
        ///   - text: 文字
        /// - Returns: 高度
        public func getSpaceLabelHeight(byWith width: CGFloat, font: UIFont, lineSpacing: CGFloat, kern: CGFloat, text: String) -> CGFloat{
            
            // 设置行间距
            let paragraphStyle = NSMutableParagraphStyle()
            paragraphStyle.lineSpacing = lineSpacing
            
            // 设置字体/字间距
            let attributes: [NSAttributedStringKey : Any] = [.paragraphStyle : paragraphStyle,
                                                             .font : font,
                                                             .kern : kern]
            
            // 计算label字符串的高度
            let rect: CGRect = text.boundingRect(with: CGSize(width: width, height: CGFloat(MAXFLOAT)),
                                                 options: .usesLineFragmentOrigin,
                                                 attributes: attributes,
                                                 context: nil)
            
            return rect.size.height
        }
    

    相关文章

      网友评论

          本文标题:(UILabel) - 测算Label显示文字所需高度

          本文链接:https://www.haomeiwen.com/subject/hjmjcftx.html