我知道这个主题已经开始了,但是我已经尝试了我在StackOverflow上找到的每个解决方案来解决这个问题,并且它因某些原因而无法工作。我以编程方式创建UILabel
,然后使用此字体。 UILabel
正在呈现,但不是我想要的字体(看起来像是默认的东西)
首先,我将两个.ttf字体导入xcode项目中名为“Resources”的文件夹下。这两种字体是Gotham Book和Gotham Book Italic(GothaBoo.ttf,GothaBooIta.ttf)
然后,我在[my app] -Info.plist文件中添加了一行名为“UIAppFont”的文件,在数组中添加了两行,Item 0 |字符串| GothaBoo,第1项|字符串| GothaBooIta。
我在Copy Bundle Resources下检查了Target Build Phases,并确保这两个字体在那里。
然后,我只是将此代码添加到viewDidLoad例程中:
UILabel *myLabel1 = [[UILabel alloc] initWithFrame:CGRectMake(50, 100, 200, 100)];
myLabel1.text = @"Hello";
myLabel1.backgroundColor = [UIColor clearColor];
myLabel1.font = [UIFont fontWithName: @"GothaBoo" size: 48.0];
myLabel1.textColor = [UIColor blackColor];
[self.view addSubview:myLabel1];
没有骰子。我究竟做错了什么?该项目采用Xcode 4.3.2,适用于iPad,运行5+以上的iOS
答案 0 :(得分:5)
在数组中必须提供完整的文件名,因此不是Item 0 |字符串| GothaBoo,第1项|字符串| GothaBooIta你必须把它变成Item 0 |字符串| GothaBoo.ttf,第1项|字符串| GothaBooIta.ttf
其次,文件名或fontname可能与iOS在fontWithName:
中看到的名称不同。如果在更改.plist中的文件名后仍然无效,请在Mac上使用Fontbook获取正确的名称。
答案 1 :(得分:1)
请注意文件名和字体名称的区别。字体名称将在Fontbook中找到。在info.plist中,它是文件名,在代码中,它是字体名称。
我自己挣扎了很长时间。很确定这会奏效。