0

在开始以编程方式开发屏幕时,我有以下内容:

NSInteger offset = 0;
UIFont *font = [UIFont fontWithName:@"Scurlock" size:80];
UILabel *label = [[UILabel alloc] initWithFrame:(CGRectMake(20, 40 + offset, width, 20))];
[label setFont:font];
[label setText:@"Hello, world!"];
[self.view addSubview:label];

“你好,世界!” 确实出现在预期的坐标处,但我还没有找到改变字体系列或字体大小的方法。Scurlock 是应用程序资源中包含的 TrueType 字体。

我怎么能用 UILabel 或类似 RTLabel 的东西(我设法加粗,但没有更改字体或字体大小)说“在这些坐标处以该字体显示此文本”?

- 编辑 -

我在支持文件的顶部有 Scurlock.TTF,plist 中有以下内容:

<key>Fonts provided by application</key>
<array>
    <string>Scurlock.TTF</string>
</array>

这会在打印出一个答案的列表中产生一个 0,并且无论我指定 Scurlock 还是 Scurlock.TTF,行为都是 AFAICT 相同的。

4

2 回答 2

3

• 检查“复制捆绑资源”下的目标,以确保字体实际上包含在捆绑中。

• 如果您还没有将字体添加到您的plist 中。

• 仔细检查字体名称,使用

for (NSString* family in [UIFont familyNames])
{
    NSLog(@"%@", family);
    for (NSString* name in [UIFont fontNamesForFamilyName: family])
        NSLog(@"  %@", name);
}

请参阅本指南

于 2013-10-03T14:12:43.340 回答
1

看看这个: 在 iPhone 应用程序中使用自定义字体 查看您添加的 .plist 属性,并确保它与您尝试加载的名称相同。

于 2013-10-03T14:16:18.763 回答