禁用 UILabel、UIText 等的自动调整字体。在 iOS/Swift 中?

Posted

技术标签:

【中文标题】禁用 UILabel、UIText 等的自动调整字体。在 iOS/Swift 中?【英文标题】:Disable Automatic adjusting font for UILabel,UIText,etc. in iOS/Swift? 【发布时间】:2020-04-29 11:27:48 【问题描述】:

转到“设置”->“常规”->“辅助功能”->“大文本”以更改字体大小。 打开我的应用程序,现在所有的 UILabels 和 UIButtons 都会相应地改变。无论设置中的大字体还是小字体,我都想禁用它并保持原样。我已经以编程方式制作了所有内容。我怎样才能禁用它?

【问题讨论】:

这个***.com/questions/55971292/…的可能副本 第一个我没有使用故事板。第二。我无法禁用它而不启用它。 【参考方案1】:

myLabel.adjustsFontForContentSizeCategory = false

虽然这取决于您使用的字体。在此处查看更多信息:https://developer.apple.com/documentation/uikit/uicontentsizecategoryadjusting/1771731-adjustsfontforcontentsizecategor?language=objc。

具体来说,这部分:

要使此属性生效,必须出售元素的字体 以下方式之一:

必须使用preferredFontForTextStyle:或 preferredFontForTextStyle:compatibleWithTraitCollection: 方法带有 有效的文本样式。

必须使用 UIFontMetrics 中的一种缩放方法出售。

【讨论】:

以上是关于禁用 UILabel、UIText 等的自动调整字体。在 iOS/Swift 中?的主要内容,如果未能解决你的问题,请参考以下文章

UILabel调整字间距

如何连接 UIButton 和 UIText

自动调整 UILabel

自动调整 UILabel 文本大小以适应 UILabel 宽度

带有自动布局的 uilabel 使用填充调整大小

UILabel - 自动调整大小标签以适合文本?