3

我知道这个主题已经深入人心,但是我已经尝试了我在 StackOverflow 上找到的所有解决方案来解决这个问题,但由于某种原因它无法正常工作。我正在以UILabel编程方式创建一个,然后使用这种字体。正在渲染但不是我想要的UILabel字体(看起来它默认为某些东西)

首先,我将两个 .ttf 字体导入到名为“Resources”的文件夹下的 xcode 项目中。这两种字体分别是 Gotham Book 和 Gotham Book Italic(GothaBoo.ttf、GothaBooIta.ttf)

然后,我在 [my app]-Info.plist 文件中添加了一行名为“UIAppFont”的行,在数组中添加了两行,Item 0 | 字符串 | GothaBoo,第 1 项 | 字符串 | 哥达布伊塔。

我检查了 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

4

2 回答 2

5

在数组中必须提供完整的文件名,所以不是 Item 0 | 字符串 | GothaBoo,第 1 项 | 字符串 | GothaBooIta 你必须把它变成 Item 0 | 字符串 | GothaBoo.ttf,第 1 项 | 字符串 | GothaBooIt.ttf

其次,文件名或字体名可能与 iOS 喜欢在fontWithName:. 如果在更改 .plist 中的文件名后仍然无法正常工作,请使用 Mac 上的 Fontbook 获取正确的名称。

于 2012-05-10T20:31:55.847 回答
1

注意文件名和字体名的区别。字体名称将在 Fontbook 中找到。在 info.plist 中,它是文件名,在代码中,它是字体名称。

我自己为此苦苦挣扎了很长时间。很确定这会奏效。

于 2012-05-10T20:34:05.270 回答