ios - 如何使用动态大小更改 Swift 中 iOS 应用程序的字体?

标签 ios swift fonts uilabel

我正在尝试在 Swift 中更改整个 iOS 应用程序的字体。我目前正在使用:

 var size:CGFloat = 16

 UILabel.appearance().font = UIFont(name: "Gudea", size: size)

这会将我的应用程序中的每个 UILabel 更改为正确的字体。但是,尽管在 Main.Storyboard 中分配了不同的大小,但所有标签都更改为大小 16。

有没有办法在不更改 Main.Storyboard 中分配的大小的情况下为每个 UILabel 分配字体?

或者,也许,

有没有更好的方法来更改整个应用程序使用的字体?

谢谢!

最佳答案

我的解决方案是扩展 UIFont 并以编程方式设置标签。

UIFontExtension.swift:

extension UIFont {

    class func myFontName() -> String { return "Gudea" }
    class func myBoldFontName() -> String { return "Gudea-Bold" }

    class func myNormalFont() -> UIFont {
        return UIFont(name: UIFont.myFontName(), size: 12)!
    }

    class func mySmallBoldFont() -> UIFont {
        return UIFont(name: UIFont.myBoldFontName(), size: 10)!
    }
}

MyViewController.swift:

myLabel.font = UIFont.myNormalFont()

mySmallLabel.font = UIFont.mySmallBoldFont()

关于ios - 如何使用动态大小更改 Swift 中 iOS 应用程序的字体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30656119/

相关文章:

swift - 在左耳机或右耳机中播放特定频率的音调

swift - 值类型的引用循环?

android - 使用带有字体的特定字符时,文本会被截断

flutter - 如何创建一个TextField来更改用户输入的字体和颜色?

ios - 如何处理此设计 - iOS

Express 应用程序中的 CSS 字体面部路径不起作用

ios - JSON 错误 : NSInvalidArgumentException reason Invalid top-level type in JSON write in Swift3 iOS

iphone - 暂停代码执行直到按下 UIAlertView 按钮?

ios - 核心数据实体 findFirst 每次都返回不同的实体,尽管事实上只有其中一个

ios - 如何从字符串中获取类的属性?