我已经检查了每个指南(包括Apple开发人员),以了解如何在您的应用程序中实现自定义字体。没有任何效果。

这是我设置的内容:

1:这些文件被添加到“资源中的字体”子文件夹中。

2:文件添加到Copy Bundle Resources

3:文件名添加在Info.plist中,结尾标记为.ttf

4:文件已添加到目标成员资格。

我还尝试了什么:

1:在Application fonts resource path中将Info.plist添加为“字体”

2:将文件添加到正确目标下Copy files phase中的build phases中。

我怎么称呼他们?

enum Font: String {
    case robotoMedium = "Roboto-Medium"
    case robotoLight = "Roboto-Light"
    case robotoRegular = "Roboto-Regular"
    case robotoMediumItalic = "Roboto-MediumItalic"
    case robotoThinItalic = "Roboto-ThinItalic"
    case robotoBoldItalic = "Roboto-BoldItalic"
    case robotoLightItalic = "Roboto-LightItalic"
    case robotoBlackItalic = "Roboto-BlackItalic"
    case robotoBold = "Roboto-Bold"
    case robotoThin = "Roboto-Thin"
    case robotoBlack = "Roboto-Black"
    case robotoRegularItalic = "Roboto-RegularItalic"
    func withSize(size: CGFloat) -> UIFont {
        return UIFont(name: self.rawValue, size: size)!
    }
}


通过使用以下方式设置字体:
Font.robotoRegular.withSize(size: 24)

一些调试:

for family: String in UIFont.familyNames
        {
            print("\(family)")
            for names: String in UIFont.fontNames(forFamilyName: family)
            {
                print("== \(names)")
            }
        }


在此打印中,未添加我的字体。

请不要只读标题并说“重复”,因为实际上不是。我已经检查了每个解决方案。

最佳答案

所以我想出了问题。哪个似乎是Xcode错误?

我注意到,如果我首先将字体放在情节提要中的标签上(我正在以编程方式进行所有操作)。它实际上已加载到字体系列中。我不知道为什么我必须在情节提要中添加它。但是我的解决方案虽然很愚蠢:

swift - 如何设置自定义字体-LMLPHP

猜猜这是我见过的最丑陋的解决方案,但是它有效,而且我找不到其他方法。

关于swift - 如何设置自定义字体,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57507664/

10-11 02:21
查看更多