繁体   English   中英

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

[英]How to change font for iOS app in Swift with dynamic size?

我正在尝试在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()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM