我正在尝试在 SwiftUI 中包含带有自定义字体的动态类型,并且当我尝试获取环境的sizeCategory.
我试过使用@Environment 来获取除 之外的对象sizeCategory,但它不断抛出相同的错误。
我在 Xcode 11 beta 5 上使用了这篇StackOverflow 帖子中的代码的修改。它似乎适用于那里的其他人,所以我真的很困惑为什么它对我不起作用。
struct RawlineFont: ViewModifier {
var textStyle: Font.TextStyle
@Environment(\.sizeCategory) var sizeCategory : ContentSizeCategory
init(_ textStyle: Font.TextStyle = .body) {
self.textStyle = textStyle
}
func body(content: Content) -> some View {
content.font(getFont())
}
func getFont() -> Font {
switch(self.sizeCategory) {
case .extraSmall:
return Font.custom("Rawline", size: 16 * getStyleFactor())
case .small:
return Font.custom("Rawline", size: 21 * getStyleFactor())
case .medium:
return Font.custom("Rawline", size: 24 * …Run Code Online (Sandbox Code Playgroud)