在快速代码中找不到SF Pro Text Medium字体

时间:2018-05-14 22:30:35

标签: ios swift storyboard xcode9 swift4.1

我正在使用xCode 9.3.1& Swift 4.1。

我试图以编程方式在我的应用代码中使用SF Pro Text Medium字体。但是在swift文件和应用程序崩溃的源代码中找不到此字体。

这是代码: NSAttributedStringKey.font:UIFont(名称:" .SFProText-Medium",大小:24.0)!

在运行时它会抛出以下错误: 致命错误:在打开可选值时意外发现nil

任何其他标准字体工作。

此字体在故事板中可用,我已成功使用它。

为什么它不以编程方式工作?我是否可以在xCode(plist等)中添加它以使其正常工作?

2 个答案:

答案 0 :(得分:1)

请按照以下步骤操作,看看它是否适合您:

1)将字体文件添加到项目中

2)在info.plist按下位于Information Property List旁边最上方的加号按钮。输入Fonts provided by application(它应该为您自动完成)。添加如下字体文件:

this

3)按左侧菜单上的项目,然后转到Build Phases并将字体文件添加到Copy Bundle Sources

的位置

如果您不确定调用的是什么字体,请打印所有字体,直到找到字体名称。在viewDidLoad

中运行此操作
UIFont.familyNames.forEach({ familyName in
    let fontNames = UIFont.fontNames(forFamilyName: familyName)
    print(familyName, fontNames)
})

答案 1 :(得分:1)

  

我是否可以在xCode(plist等)中添加它以使其正常工作?

当然。按照Nader的说明操作,确保字体文件是您的项目作为目标成员资格,如下所示:

enter image description here