首页 > 解决方案 > 禁用 UILabel、UIText 等的自动调整字体。在 iOS/Swift 中?

问题描述

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

标签: iosswiftiphonexcodeswift4

解决方案


myLabel.adjustsFontForContentSizeCategory = false

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

具体来说,这部分:

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

  • 它必须使用具有有效文本样式的 preferredFontForTextStyle: 或 preferredFontForTextStyle:compatibleWithTraitCollection: 方法出售。

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


推荐阅读