UILabel的默认行距

时间:2018-12-03 16:53:32

标签: ios swift

UILabel中的默认行距是多少。我需要计算在UILabel中设置了框架的行数。

1 个答案:

答案 0 :(得分:0)

我不确定UILabel中的默认行距是多少,但是我使用以下内容来计算UILabel想要的行数。

extension UILabel {

    var preferredNumberOfLines: Int {
        guard let currentText = self.text else {
            return 0
        }

        let labelSize = currentText.boundingRect(with: CGSize(width: self.bounds.width,
                                                              height: CGFloat.greatestFiniteMagnitude),
                                                 options: NSStringDrawingOptions.usesLineFragmentOrigin,
                                                 attributes: [NSAttributedStringKey.font : self.font],
                                                 context: nil)

        return Int(ceil(CGFloat(labelSize.height) / self.font.lineHeight))
    }
}