我在iOS项目中添加了名为“Quicksand_Dash.otf”,“Quicksand-Bold.otf”的自定义字体。我可以在“界面”构建器中看到它,但在代码中列出字体时看不到。
“应用程序提供的字体”和相关名称已添加到plist文件中。
我检查了字体文件是否在复制包资源中。
我如何列出字体;
for family in UIFont.familyNames {
let sName: String = family as String
print("family: \(sName)")
for name in UIFont.fontNames(forFamilyName: sName) {
print("name: \(name as String)")
}
}
我检查了堆栈溢出中的每个答案,但我认为我有一个不同的问题。
How To Use Custom Fonts in iPhone SDK
编辑:如果我在故事板中添加标签并使其字体为Quicksand。字体也列在代码中。但是,我不想用户故事板。我正在用代码创建控制器。
EDIT2:如果我在故事板中删除标签。它开始没有再见了。
这是我面临的同样问题,但我已经在该帖子中应用了解决方案;
答案 0 :(得分:3)
我也坚持这个问题,并且给出的解决方案对我不起作用。在我的情况下,ttf文件的“ Target Membership”块已取消选中。因此,当我单击它时,字体家族列表中列出了受人尊敬的ttf字体。
快乐编码!
答案 1 :(得分:2)
你要自己踢......
在你的plist信息文件中,你有:
`Quicksand-Dash.otf`
但您添加的文件名为:
`Quicksand_Dash.otf`
下划线不是连字符
重命名文件或修改plist条目,您就会看到自己的字体。
调试控制台输出:
family: Quicksand
name: Quicksand-BoldItalic
name: QuicksandDash-Regular
name: Quicksand-Bold
这是一个简单的单视图项目,对我来说很适合 - 在模拟器和设备上。 (我 不 将字体添加到OS X,仅添加到我的项目中):
https://github.com/DonMag/Quicksand
仅供设置参考:
答案 2 :(得分:0)
参考@Donmag回答。我从GitHub下载他的示例项目并将其项目中的字体复制到我的项目中然后复制"应用程序提供的字体"从plist到我的plist的区域。有趣的是,它复制为" UIAppFonts"。但是,它现在开始起作用了。
答案 3 :(得分:-1)
在应用程序中使用自定义字体
请查看以下链接以获取更多参考。