自定义字体不在设备上显示,但在模拟器上
我一直在使用iOS中的自定义字体,并且除了自定义字体不会显示在我的任何设备上外,大部分情况已经解决了。
- 我已经添加了字体到项目文件的根目录。
- 将其添加到数组下的info.plist文件或“应用程序提供的字体”
- 检查了原始文件和我添加到info.plist文件的大小写是否相同。
- 使用
[playMenuBtn.titleLabel setFont:[UIFont fontWithName:@"fontname" size:40]];
使字体工作。
当我在模拟器中运行我的应用程序时,它都显示正常,并工作。 但是,只要我在物理设备上运行它,它会显示默认大小的默认字体。
如果我使用:
UIFont *font = [UIFont fontWithName:@"VINCASTENCIL" size:20]; NSLog(@"Font:%@", font);
然后模拟器返回: 2012-04-07 01:10:41.544 AppName[47412:f803] Font:<UICFFont: 0x683e040> font-family: "VINCA STENCIL"; font-weight: normal; font-style: normal; font-size: 20px
2012-04-07 01:10:41.544 AppName[47412:f803] Font:<UICFFont: 0x683e040> font-family: "VINCA STENCIL"; font-weight: normal; font-style: normal; font-size: 20px
当设备返回时: 2012-04-07 00:42:56.358 AppName[5079:707] Font:(null)
我已经尝试了所有的东西,包括尝试FontBook告诉我字体可以被命名的所有名称。 我知道这是免费的,没有许可证。
任何帮助将不胜感激,因为它是驱使我坚果,我真的不想使用这些图像的本地化将是一个痛苦!
对,我刚刚设法得到这个工作。 我所做的每件事都是正确的,但由于某种原因,并没有将我的字体文件添加到“目标” – >“构build阶段” – >“复制捆绑软件资源”。 通过手动将其添加到此列表中,字体将显示在设备上。
这是第二次这个项目没有自动在这里添加一个文件(这是以前用一个我添加的类,它没有),所以我认为这是我的项目有问题,或在Xcode的错误。
感谢大家的build议和帮助。 😀
是的,按照上面提到的所有方向,你应该没问题。 还有其他东西要注意:区分大小写。 在你的* .plist文件和Fonts provided by application
。 模拟器可能会忽略大小写,但设备不会。 例如,“Facebook”与“FaceBook”不一样。 (这导致字体在模拟器中工作,但不是设备!)