FontAwesome 图标仅在释放模式下崩溃

FontAwesome icon crash only when release mode

当我的项目处于调试模式时,一切正常。 但是当我更改为发布模式时,我的应用程序崩溃了

[_menuButton setTitleTextAttributes:@{NSFontAttributeName:[UIFont fontWithName:kFontAwesomeFamilyName size:30.0],
                                     NSForegroundColorAttributeName:[UIColor whiteColor]
                                     } forState:UIControlStateNormal];

错误信息是

* Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '* -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0]'

如果我注释了代码,它可以 运行 没问题,但是所有 FontAwesome 图标都变成了问号。

有什么办法解决吗?请帮忙,非常感谢!

如您所见,错误消息警告您插入时某些内容变为 nil,因此您需要检查哪个对象为 nil。

很有可能是因为:

[UIFont fontWithName:kFontAwesomeFamilyName size:30.0]

在发布模式下,kFontAwesomeFamilyName无法识别,或者字体文件未捆绑到您的应用程序中,因此fontWithName returns nil。