NSMutableAttributedString

NSMutableAttributedString

我以为我可以节省其他人的调试时间,并说将adjustsFontForContentSizeCategory设置为true对设置attributedText值的标签没有影响(至少在tableview单元格标签中)。

幸运的是,解决方案是自己在属性字符串上设置字体。我写了一个小的实用程序扩展:

public extension NSMutableAttributedString {
    public func setFont(_ font: UIFont) -> NSMutableAttributedString {
        addAttribute(NSAttributedStringKey.font, value: font, range: NSRange(location: 0, length: string.count))

        return self
    }
}

在哪里设置您将调用的attributedText属性
@IBOutlet weak var myLabel: UILabel!

var myAttributedString: NSAttributedString = .....

myLabel.attributedText = NSMutableAttributedString(attributedString: myAttributedString).setFont(myLabel.font)

最佳答案

public extension NSMutableAttributedString {
public func setFont(_ font: UIFont) -> NSMutableAttributedString {
    addAttribute(NSAttributedStringKey.font, value: font, range: NSRange(location: 0, length: string.count))

    return self
}

}

关于ios - 使用属性文本在UILabel中调整AdjustsFontForContentSizeCategory,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48176121/

10-11 10:21