我正在使用 xCode 9.3.1 和 Swift 4.1。
我正在尝试以编程方式在我的应用程序代码中使用 SF Pro Text Medium 字体。但是在 swift 文件的源代码中没有找到这种字体,应用程序崩溃了。
代码如下: NSAttributedStringKey.font:UIFont(名称:“.SFProText-Medium”,大小:24.0)!
运行时会抛出以下错误: fatal error :解包可选值时意外发现 nil
任何其他标准字体作品。
Storyboard中提供了这种字体,并且我已经成功使用了它。
为什么它不能以编程方式工作?我是否必须将其添加到 xCode(plist 等)中才能使其工作?
最佳答案
按照以下步骤操作,看看是否适合您:
1) 将字体文件添加到您的项目
2) 在 info.plist
中,按顶部信息属性列表
旁边的加号按钮。输入应用程序提供的字体
(它应该自动为您完成)。添加您的字体文件,如下所示:
3) 按左侧菜单上的项目,然后转到 Build Phases
并将字体文件添加到显示 Copy Bundle Sources
如果您不确定字体的名称,请打印所有字体,直到找到字体的名称。在 viewDidLoad
中运行它
UIFont.familyNames.forEach({ familyName in
let fontNames = UIFont.fontNames(forFamilyName: familyName)
print(familyName, fontNames)
})
关于ios - 在 swift 代码中找不到 SF Pro Text Medium 字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50339896/