gpt4 book ai didi

ios - 如何查看UILabel当前的字体大小?

转载 作者:行者123 更新时间:2023-11-29 05:16:42 25 4
gpt4 key购买 nike

我有 3 个 UILabels,我想为它们设置相同的字体(3 种可能性中最小的一个)。问题是什么?我不知道如何检查当前字体 - 每个 UILabels 使用 Autoshrink ,最小字体比例和行数等于 0。UILabels 的文本设置在 ViewDidLoad() 方法(可能的标签文本有多种组合)。

我尝试使用 UILabel.font.pointSize 属性(在 viewDidAppear() 方法中调用)获取当前字体大小,然后比较所有字体大小。问题是 UILabel.font.pointSize 返回的不是 UILabel 文本字体大小的当前值(在完成 Autoshrink 后),而是在 Storyboard 中设置的值。

我完全没有想法,所以感谢您的帮助!

你好,约翰

最佳答案

使用此扩展

extension String {

func height(withConstrainedWidth width: CGFloat, font: UIFont) -> CGFloat {
let constraintRect = CGSize(width: width, height: .greatestFiniteMagnitude)
let boundingBox = self.boundingRect(with: constraintRect, options: .usesLineFragmentOrigin, attributes: [NSFontAttributeName: font], context: nil)

return ceil(boundingBox.height)
}
}

获取高度

height = strDesc.height(withConstrainedWidth: UIScreen.main.bounds.size.width - 160, font: UIFont.systemFont(ofSize: 14.0))

关于ios - 如何查看UILabel当前的字体大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59116106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com