在 Interface builder 中看到自定义字体,但在 iOS 项目的代码中看不到
Custom font seen in Interface builder but not in code in iOS project
我将名为 "Quicksand_Dash.otf"、"Quicksand-Bold.otf" 的自定义字体添加到 iOS 项目中。我可以在 Interface builder 中看到它,但是当我在代码中列出字体时看不到它。
"Fonts provided by application" 相关名称已添加到 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
Custom Fonts Not Working
编辑:如果我在情节提要中添加标签并将其字体设为 Quicksand。字体也在代码中列出。但是,我不想用户故事板。我在代码中创建控制器。
EDIT2:如果我删除情节提要中的标签。又开始不见了。
这与我面临的问题相同,但我已经应用了 post 中的解决方案;
在应用程序中使用自定义字体
- 将字体添加到您的项目文件夹
- 将其添加到 plist 文件中
- 检查它是否添加到复制包资源中
- 将字体添加到您的字体簿
查看下面的 link 以获得更多参考。
你会踢自己的...
在您的 plist 信息文件中,您有:
`Quicksand-Dash.otf`
但是您添加的文件名为:
`Quicksand_Dash.otf`
下划线不是连字符
重命名您的文件,或编辑 plist 条目,您将看到您的字体。
调试控制台输出:
family: Quicksand
name: Quicksand-BoldItalic
name: QuicksandDash-Regular
name: Quicksand-Bold
这是一个简单的 single-view 项目,对我来说效果很好——在模拟器和设备上。 (我 没有 将字体添加到 OS X,只添加到我的项目中):
https://github.com/DonMag/Quicksand
仅供设置参考:
参考@Donmag 的回答。我从 GitHub 下载他的示例项目并将字体从他的项目复制到我的项目,然后将 "Fonts provided by application" 区域从 plist 复制到我的 plist。有趣的是,它被复制为 "UIAppFonts"。但是,它现在开始工作了。
我也坚持这个问题,给出的解决方案对我不起作用。在我的例子中,ttf 文件的 "Target Membership" 块未选中。所以当我点击它时,字体系列列表中列出了受人尊敬的 ttf 字体。
编码愉快!!
我将名为 "Quicksand_Dash.otf"、"Quicksand-Bold.otf" 的自定义字体添加到 iOS 项目中。我可以在 Interface builder 中看到它,但是当我在代码中列出字体时看不到它。
"Fonts provided by application" 相关名称已添加到 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
Custom Fonts Not Working
编辑:如果我在情节提要中添加标签并将其字体设为 Quicksand。字体也在代码中列出。但是,我不想用户故事板。我在代码中创建控制器。
EDIT2:如果我删除情节提要中的标签。又开始不见了。
这与我面临的问题相同,但我已经应用了 post 中的解决方案;
在应用程序中使用自定义字体
- 将字体添加到您的项目文件夹
- 将其添加到 plist 文件中
- 检查它是否添加到复制包资源中
- 将字体添加到您的字体簿
查看下面的 link 以获得更多参考。
你会踢自己的...
在您的 plist 信息文件中,您有:
`Quicksand-Dash.otf`
但是您添加的文件名为:
`Quicksand_Dash.otf`
下划线不是连字符
重命名您的文件,或编辑 plist 条目,您将看到您的字体。
调试控制台输出:
family: Quicksand
name: Quicksand-BoldItalic
name: QuicksandDash-Regular
name: Quicksand-Bold
这是一个简单的 single-view 项目,对我来说效果很好——在模拟器和设备上。 (我 没有 将字体添加到 OS X,只添加到我的项目中):
https://github.com/DonMag/Quicksand
仅供设置参考:
参考@Donmag 的回答。我从 GitHub 下载他的示例项目并将字体从他的项目复制到我的项目,然后将 "Fonts provided by application" 区域从 plist 复制到我的 plist。有趣的是,它被复制为 "UIAppFonts"。但是,它现在开始工作了。
我也坚持这个问题,给出的解决方案对我不起作用。在我的例子中,ttf 文件的 "Target Membership" 块未选中。所以当我点击它时,字体系列列表中列出了受人尊敬的 ttf 字体。
编码愉快!!