更新到Xcode 5.1.1后,自定义字体的fontWithName返回nil。

3

更新到Xcode 5.1.1后,使用自定义字体的fontWithName方法始终返回nil,在设置atributedString的属性时导致崩溃。

我确认我的自定义字体在[UIFont familyNames]fontNamesForFamilyName的结果中出现。

如果我传入系统字体名称,如Helvetica,那么fontWithName可以正常工作。

是否有人遇到过类似的问题?该怎么解决?这是Xcode的一个bug吗?


请查看此链接中的第4步骤:https://dev59.com/82vXa4cB1Zd3GeqPNuP8#13800169 - arthankamal
我看到了完全相同的情况...一切都运作得非常完美(并且在这个项目上已经运作了几个月)...更新了Xcode到5.1.1,现在自定义字体出现了问题。我确认了字体在包中,并且在运行时也在字体数组中...但无法使用fontWithName方法。 - Darren Ehlers
你确定你的字体已经在目标成员中了吗? http://puu.sh/8819G/ec00eb063b.png - Michael King
1
@MichaelKing 我很确定,在最终的.app包中可以找到字体文件。 - Allen Hsu
@DarrenEhlers 我移除了 info.plist 中的所有字体和行,然后再次添加字体,现在看起来恢复正常了。 - Allen Hsu
显示剩余6条评论
1个回答

2
我解决了这个问题(至少在我的安装中)。
我使用一个叫做 moarfonts 的程序(http://pitaya.ch/moarfonts/)。
在 Xcode 5.1 和 Xcode 5.1.1 之间发生了一些变化,我猜测与 Xcode.app 包内的权限有关。
但是,无论如何,通过按照 MoarFonts 故障排除方案的解决方案#2的步骤 (http://pitaya.ch/moarfonts/#troubleshooting),问题得到了解决,现在运行良好。
export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk
/usr/local/bin/moarfonts reset

"耶!回到工作中..."

太好了。事实上,我的解决方案几乎相同,我也重置了moarfonts,然后重新添加了字体,尽管我不知道哪一步起了作用。顺便说一下,我听说Xcode 5.1支持在xib中使用自定义字体,但是如果没有moarfonts,我看不到任何自定义字体。 - Allen Hsu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接