【发布时间】:2020-02-02 05:32:37
【问题描述】:
理想情况下,iOS 应用使用符合用户系统范围字体大小设置的字体大小。该主题在 2017 年的 WWDC 演讲中进行了介绍,该演讲名为使用动态类型构建应用程序。
在简单的情况下,您可以使用body、caption1、title 等命名样式设置UIView 的字体,这些样式的大小取决于用户的设置。
在更棘手的情况下,您需要为不同的字体大小编写不同的自动布局约束。例如,当字体较大时,水平堆叠的标签可能需要垂直堆叠。
对于这种情况,WWDC 演讲显示了一些类似这样的代码:
if traitCollection.preferredContentSizeCategory > .extraExtraLarge {
NSLayoutConstraint.deactivate( horizontalConstraints )
NSLayoutConstraint.activate( verticalConstraints )
} else {
NSLayoutConstraint.deactivate( verticalConstraints )
NSLayoutConstraint.activate( horizontalConstraints )
}
在 SwiftUI 中与 this 等价的是什么?
【问题讨论】:
标签: fonts accessibility swiftui dynamic-type-feature