Xcode 7 iOS9 字体不再被识别

Xcode 7 iOS9 font no longer recognized

对于 iOS 7/8,当以编程方式设置文本的参数时,它会在设备上 compiled/built 到 运行 时按预期显示。但是,在 Xcode 7 中针对 iOS9 测试我的应用程序时,由于 text.font 无法识别字体,我所有视图的框架都已关闭或完全不可见。它本身不是自定义字体,它在 Apple 的库中,事实上,当您通过 IB 设置标签时它会正确显示,但在代码中执行相同的操作时它只会显示系统字体。任何想法如何规避这个问题?它在 iOS9 中创建了一个非常丑陋的视图,但所有内容仍然正确显示 <=iOS8.

有问题的字体是"Heiti TC Light"

我从 Apple 的 Font Book 获得了 post 脚本名称并相应地应用它:

@"STHeitiTC-Light"

同样,适用于所有 iOS 版本,除了 iOS9

使用 Xcode 7.0 beta 3 | iOS9个模拟器

Apple 似乎已经在 Xcode 版本中结束了对这种特定字体的支持。它只显示在 IB 中,因为它是从以前的 Xcode 版本缓存并通过升级保留的。

对于字体有同样问题的用户,它可能仍然是有效的 OS 字体,但他们可能已将其从 Xcode 中删除。我建议开始一个新项目,通过更改新项目 IB 中的字体来查看您的字体是否仍然是受支持的字体,如果未列出,则必须将 font.ttc 从 Font Book 复制到项目中,然后像其他自定义字体一样将其包含在您的 info.plist 中。