UILabel行数计算返回多一行

问题描述 投票:1回答:1

我正在使用下面的UILabel扩展属性。 UILabel换行模式为“截尾”。它总是返回多于实际行数的一行。关于这个问题的任何想法。

var maxNumberOfLines: Int {
        guard let text = text, let font = font else {
            return 0
        }
        layoutIfNeeded()
        let charSize = font.lineHeight
        let textSize = (text as NSString).boundingRect(
        with: CGSize(width: bounds.width, height: .greatestFiniteMagnitude),
        options: .usesLineFragmentOrigin,
        attributes: [.font: font],
            context: nil)
        let linesRoundedUp = Int(ceil(textSize.height/charSize))
        return linesRoundedUp
    }
ios swift uilabel
1个回答
0
投票

我的标签中字符串的末尾有一个新的换行符,这有助于增加额外的行。在分配给UILabel之前将其删除可解决此问题。

© www.soinside.com 2019 - 2024. All rights reserved.