[英]Custom font seen in Interface builder but not in code in iOS project
我在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)")
}
}
我检查了堆栈溢出中的每个答案,但我认为我遇到了另一个问题。
编辑:如果我在情节提要中添加标签并使其字体为流沙。 字体也在代码中列出。 但是,我不需要用户情节提要。 我正在用代码创建控制器。
EDIT2:如果我删除情节提要中的标签。 它开始不再被看到。
这是我面临的相同问题,但是我已经在该文章中应用了解决方案。
你要踢自己...
在您的plist信息文件中,您具有:
`Quicksand-Dash.otf`
但是您添加的文件名为:
`Quicksand_Dash.otf`
下划线不要连字符
重命名文件,或编辑plist条目,您将看到字体。
调试控制台输出:
family: Quicksand
name: Quicksand-BoldItalic
name: QuicksandDash-Regular
name: Quicksand-Bold
这是一个简单的单视图项目,在Simulator和Device上都对我有效。 (我没有将字体添加到OS X,仅添加到了我的项目中):
https://github.com/DonMag/Quicksand
仅供安装参考:
在应用程序中使用自定义字体
检查以下链接以获取更多参考。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.