gpt4 book ai didi

ios - 具有给定字体的 2 行 UILabel 的高度

转载 作者:搜寻专家 更新时间:2023-11-01 06:30:09 28 4
gpt4 key购买 nike

如何计算具有给定字体2 行 UILabel 的高度?

我知道,一般的多行标签有一种方法可以动态计算它们的大小

let label = UILabel()
label.numberOfLines = 0
label.text = "Some multiline [...] text"

let constraintSize = CGRect(width: aWidth, height: CGFloat.greatestFiniteMagnitude)
let size = aLabel.sizeThatFits(constraintSize)

现在,我想知道的是:在不知道标签中将要写入的文本,而只知道字体的情况下,如何优雅地计算标签的高度正好 2 (或一般 x) 行?

优雅地意思是:也许有人找到了比这更好的解决方案:

let label = UILabel()
label.numberOfLines = 2
label.text = "Some really, really, really, [...] long text to make sure it spans at least 2 lines even for the tiniest fonts."

let constraintSize = CGRect(width: aWidth, height: CGFloat.greatestFiniteMagnitude)
let size = aLabel.sizeThatFits(constraintSize)

感谢您的帮助!

最佳答案

以下将为您提供两行文本的大小。将字体替换为您选择的字体:

let attrs: [NSAttributedStringKey: Any] = [.font: UIFont.systemFont(ofSize: 17)]
let twoLineHeight = "\n".size(withAttributes: attrs).height

关于ios - 具有给定字体的 2 行 UILabel 的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48530257/

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