我遇到了以下问题: 我必须使用以下字体: Helvetica Neue LT Pro 。中等浓缩和粗体浓缩款式。
我首先将它们作为otf文件使用,我在某处读到,将它们作为真实类型字体更好。所以我使用http://www.freefontconverter.com/
将它们转换为 .ttf 文件我做了什么:
1)我在资源包中添加了字体,检查以确保它们列在Copy Bundle Resources
部分。
2)我将其添加到Fonts provided by application
的{{1}}条目中,其中包含我的2个文件的完整名称和扩展名:Info.plist
和helveticaneueltprobdcn.ttf
3)我使用此代码检查已安装的字体并获取名称:
helveticaneueltpromdcn.ttf
4)字体列在那里,如下所示:
for (NSString *familyName in [UIFont familyNames])
{
NSLog(@"----------------");
NSLog(@"FAMILY: %@", familyName);
for(NSString *fontName in [UIFont fontNamesForFamilyName:familyName])
{
NSLog(@" %@", fontName);
}
}
5)尝试使用 FAMILY: Helvetica Neue LT Pro
HelveticaNeueLTPro-MdCn
HelveticaNeueLTPro-BdCn
时仍然无法正常工作。这不是我要求的字体,我猜它没有找到它并使用系统默认值。如果我改变大小,则没有变化 - 我可以使用16或46的大小,结果是一样的。
6)我尝试删除并重新安装应用程序,在XCode中清理项目,我能想到的一切。
有谁知道为什么这不起作用? 我google了很多,我找不到解决方案。 如果重要,我正在使用 XCode 4.3.2 ,iOS SDK 5.1 并在安装了iOS 5.1.1的iPad上运行。
谢谢。
此致
乔治
答案 0 :(得分:0)
终于搞定了......
这就是我在做的事情:
MyCustomView *view = [[MyCustomView alloc] init];
//bla bla
在MyCustomView.m中,在init方法中我有这个:
- (id) init
{
//create some labels and set their fonts.
}
问题在于,在我设置字体时,标签的父视图(MyCustomView实例)未添加到superview。
我在MyCustomView实例上调用init之后调用了一个setFonts
方法,当我在那里设置字体时,它工作正常!
希望这有帮助。
干杯!