我想让一个应用程序包含一个用于呈现文本的自定义字体,加载它,然后将其与标准UIKit元素一起使用,如UILabel。这可能吗
iOS 3.2及更高版本支持此功能。直接从iPhone OS 3.2的新增内容:
自定义字体支持
希望使用自定义字体的应用程序现在可以在其应用程序包中包含这些字体,并通过在其Info.plist文件中包含UIAppFonts键向系统注册这些字体。此键的值是一个字符串数组,用于标识应用程序包中的字体文件。当系统看到密钥时,它将加载指定的字体并使其可供应用程序使用
在Info.plist中设置字体后,您可以将自定义字体与IB中的任何其他字体一样使用,也可以通过编程方式使用
苹果开发者论坛上有一个持续的帖子:
https://devforums.apple.com/thread/37824 (需要登录)
这里有一个关于如何实现这一点的优秀而简单的3步教程(断开的链接已删除)
- 使用Xcode作为资源将自定义字体文件添加到项目中
- 向名为
UIAppFonts的Info.plist文件添加一个键 - 将此键设置为数组
- 对于您拥有的每种字体,将字体文件(包括扩展名)的全名作为项目输入到
UIAppFonts数组中 - 保存
Info.plist - 现在,在您的应用程序中,您只需调用
[UIFont-fontWithName:@“CustomFontName”size:12]即可获得自定义字体,以便与您的UILabels和uitextview等一起使用
另外:确保字体在您的复制包资源中