为什么这个标签看起来没有问题?

时间:2013-10-03 14:02:32

标签: ios fonts uilabel

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

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,行为都是相同的。

2 个答案:

答案 0 :(得分:3)

•在&#34;复制捆绑资源&#34;下检查您的目标。确保字体实际包含在捆绑包中。

•如果还没有,请将字体添加到plist中。

•使用

仔细检查字体名称
for (NSString* family in [UIFont familyNames])
{
    NSLog(@"%@", family);
    for (NSString* name in [UIFont fontNamesForFamilyName: family])
        NSLog(@"  %@", name);
}

请参阅this guide

答案 1 :(得分:1)

看看这个: Use custom fonts in iPhone App 查看您添加的.plist属性,并确保它与您尝试加载的属性名称相同。