gpt4 book ai didi

ios - 如何以编程方式设置字体大小以适应 swift 4 中的行数值

转载 作者:可可西里 更新时间:2023-11-01 01:57:33 24 4
gpt4 key购买 nike

我有两个名为 headingLabel 和 descriptionLabel 的 UILabel,它们的行数分别为 3 和 5。现在我希望文本的字体大小发生变化并适合 numberOfLines,其中文本根据收到的一些网络 json 数据而变化。

image for text in iphone5s image for text in iphoneX

 here is my code

let headingLabel : UILabel = {
let hl = UILabel()
hl.translatesAutoresizingMaskIntoConstraints = false
hl.text = "Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor"

hl.textColor = .black
hl.lineBreakMode = NSLineBreakMode.byWordWrapping
hl.numberOfLines = 3;
hl.sizeToFit()
hl.clipsToBounds = true
hl.font = hl.font.withSize(20)

return hl
}()

let descriptionLabel : UILabel = {
let dl = UILabel()
dl.translatesAutoresizingMaskIntoConstraints = false
dl.text = "Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor sit amet amet Lorem ipsum dolorLorem ipsum dolor sit amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor sit amet amet Lorem ipsum dolor"
dl.textColor = .black
dl.lineBreakMode = NSLineBreakMode.byWordWrapping
dl.numberOfLines = 5
dl.font = dl.font.withSize(18)
dl.sizeToFit()
dl.clipsToBounds = true
dl.alpha = 0.8
return dl
}()

最佳答案

使用 Autoshrink 将文本调整到标签框架中。

Authoshrink 最小字号

enter image description here

Authoshrink with Minimum Font Scale

enter image description here

有关 UILabel 的 Apple 文档 - Autoshrink

确定标签是否在求助于截断之前调整文本的外观。选择最小字体比例并输入一个值以允许标签缩小字体大小以适合文本。启用 Tighten Letter Spacing 以允许标签减少字符间距。在运行时分别使用 minimumScaleFactor 和 allowsDefaultTighteningForTruncation 属性访问这些值。

关于ios - 如何以编程方式设置字体大小以适应 swift 4 中的行数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50623966/

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