使用 SwiftUI 修复 iOS 14 小部件中的字体大小

Fixed font size in iOS 14 widget with SwiftUI

对于 iOS 14 小部件,我想修复小部件中的字体大小,即使用户在辅助功能设置中将其设置为更大的类型(更大的类型)。我想要这个是因为文本已经非常大(大数字时钟小部件),如果它更大,文本就会从小部件上掉下来,因此不清晰。我正在使用自定义字体。

我尝试用 .font(.custom("MyCustomFont", size: 17)) 修复字体大小。但即便如此,根据用户设置,类型也会变得更大。如何永久修复 iOS 14 小部件中的字体大小?是否有解决方法或其他方法来修复小部件的字体大小?

您可以使用 .environment(\.sizeCategory, .large) 来强制执行尺寸类别。这是一个例子:

var body: some View {
    VStack {
        Text("text1")
        Text("text2")
    }
    .environment(\.sizeCategory, .large)
}

default category is large but here你可以找到更多的分类。