swift - 界面生成器中具有动态类型的自定义字体
问题描述
我的情节提要中有几个视图,其中包含UILabel
s。这些标签设置为Automatically Adjusts Font
并使用文本样式,如Body
or Headline
。
我知道有这样的编程方法: https ://useyourloaf.com/blog/using-a-custom-font-with-dynamic-type/
let label = UILabel()
label.font = scaledFont.font(forTextStyle: textStyle)
label.adjustsFontForContentSizeCategory = true
但是,鉴于我已经布置了标签并设置了它们的文本样式,有没有办法在界面生成器中使用自定义字体和文本样式?或者也许以某种方式覆盖他们的字体系列,同时尊重他们已经设置的文本样式?
解决方案
不,您需要使用程序化方法。但是,很容易编写一个遍历所有标签的小循环,并为每个标签获取已在界面生成器中设置的动态类型“角色”,并根据该“角色”和所需的自定义字体替换 UIFontMetrics 值。
推荐阅读
- node.js - 初始生产构建创建捆绑代码,但所有后续构建重用旧捆绑
- sql - 为状态列创建主表
- bash - Web Assembly emrun:从批处理脚本运行时找不到命令,但在命令窗口中运行良好
- html - bootstrap4 导航栏项目延伸过去
- sql - SQL:属性同时匹配两个不同的条件
- excel - 从包含最小和最大条件的第 2 列和第 3 列以及作为单独值的第 1 列检索第 4 列?
- javascript - 如何防止我的页面重新加载?(我在 HTML 中,我做了建议的方法,但没有用)
- c# - 如何在 wpf 中动态选择 TextBlock 动画类型?
- list - 如何将唯一元素添加到列表中?
- tensorflow - 由于 TF2 中的 tfVariable 问题,简单的 RNN 模型无法工作