我正在尝试在我的 SwiftUI 应用程序中设置自定义默认字体。我尝试了这个线程的几个建议为整个 iOS 应用程序设置默认字体?.
但是,这些似乎都不适用于 SwiftUI。例如使用这种方法:
// Constants.swift
struct Fonts {
static var plex = "IBMPlexMono-Text"
}
// FontExtension.swift
extension UILabel {
var substituteFontName : String {
get { return self.font.fontName }
set { self.font = UIFont(name: Fonts.plex, size: 17)! }
}
}
// AppDelegate.swift in didFinishLaunchingWithOptions-function
UILabel.appearance().substituteFontName = Fonts.plex
Run Code Online (Sandbox Code Playgroud)
当我启动应用程序时,自定义字体会出现一瞬间,然后变回 Apple 的默认字体。为什么它会变回苹果的字体,如何永久完成?
是否可以在Text-View上进行扩展?
Shi*_*jaj -1
您可以使用这样的自定义字体:
Font.custom("Font-Family-Name", size: fontSize)
Run Code Online (Sandbox Code Playgroud)
例子:
Text("Testing")
.font(Font.custom("Font-Family-Name", size: 16))
Run Code Online (Sandbox Code Playgroud)
要在应用程序中的任何位置使用该字体,请创建如下结构。确保在包含字体结构的文件中导入 SwiftUI,如下所示:
导入 SwiftUI
struct AppFont {
static func commonFont(fontSize: CGFloat) -> Font {
return Font.custom("Font-Family-Name", size: fontSize)
}
}
Run Code Online (Sandbox Code Playgroud)
现在您可以在应用程序中的任何位置使用它们,如下所示:
Text("Testing")
.font(AppFont.commonFont(fontSize: 16))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3748 次 |
| 最近记录: |