字体更改不起作用

时间:2011-03-12 15:16:16

标签: objective-c xcode ios4 fonts interface-builder

我想将标签的字体从helvetica更改为calibri bold。所以我在界面构建器中选择了calibri bold,但在我的iphone上它是基石helvetica。当我尝试在代码中更改它时:

[label setFont: [UIFont fontWithName: @"Calibri Bold" size: 48.0]];
label.textColor = [UIColor whiteColor];

我的iphone上的字体是helvetica 12。

哪里出错?

谢谢你:)

3 个答案:

答案 0 :(得分:3)

错误在于Calibri Bold字体不属于iOS。

您可以将其作为自定义字体提供,作为资源。不要忘记将相关密钥添加到info.plist。它应该是UIAppFonts,类型数组,包含字体的文件名。然后使用[UIFont familyNames]获取字体名称 - 它可能与文件名不匹配。

答案 1 :(得分:0)

三件事: 1)并非iphone上的界面构建器中的每种字体都可用 2)您必须选择与字体内部名称完全匹配的名称 - 这通常不是字体的IB“常规”名称。 3)确保您的插座正确连接,否则您的代码不会更改标签。

以下是iphone上内部字体名称的链接:(有点过时,但您可以在项目中运行相同的代码以获取最新的名称列表):

http://ajnaware.wordpress.com/2008/10/24/list-of-fonts-available-on-the-iphone/

答案 2 :(得分:0)

您确定iPhone上的字体是否可用?

Here是可用字体列表(可能已过期,但是......)