2014-02-28 72 views
14

我正在创建UILabel,对于标签,我可以设置字体名称为HelveticaNeue Regular,Light,UltraLight等,但我无法将字体名称设置为HelveticaNeue Thin,但它不能按预期工作。我确实喜欢,如何在iOS中将UILabel的字体名称设置为HelveticaNeue Thin?

label.font = [UIFont fontWithName:@"HelveticaNeue-Thin" size:16]; 

此外,我已经搜索谷歌没有得到任何解决方案。如何解决这个问题?谢谢。

+0

你要的字体添加到您的项目,如果您使用的是自定义的字体 –

+0

@HimanshuJoshi Helvetica Neue字体薄已经捆绑在iOS中(至少7)。 –

+0

请检查此: - http://stackoverflow.com/questions/19527962/what-happened-to-helveticaneue-italic-on-ios-7-0-3 –

回答

15

此字体是捆绑在一起的iOS 7,因此,如果您的目标的iOS 7及以上的

label.font = [UIFont fontWithName:@"HelveticaNeue-Thin" size:16.0f];

会工作。

但是,如果你的目标的iOS 6.1及以下你需要embed the font

2
UIFontDescriptor *helveticaNeueFamily = 
    [UIFontDescriptor fontDescriptorWithFontAttributes: 
     @{ UIFontDescriptorFamilyAttribute: @"Helvetica Neue" }]; 
NSArray *matches = 
    [helveticaNeueFamily matchingFontDescriptorsWithMandatoryKeys: nil]; 

的matchingFontDescriptorsWithMandatoryKeys:如图所示方法返回的字体描述的系统上的所有Helvetica Neue字体的字体,如HelveticaNeue,HelveticaNeue介质,HelveticaNeue-灯,HelveticaNeue薄阵列,等等。

您可以修改preferredFontForTextStyle返回的字体:应用符号特征,如粗体,斜体,展开和浓缩。您可以使用字体描述符来修改特定的特征,如清单9-2所示。

通过apple

这个字体,你不能直接申请引用。

,所以你可以自定义您的字体

How to use custom fonts in iPhone SDK?

+1

在iOS 7字体捆绑http://support.apple.com/kb/HT5878 –

+0

HelveticaNeue-Thin在iOS7中可用。请参阅http:// iosfonts。com/ –

14

更新的答案,以支持迅速

let font = UIFont(name: "HelveticaNeue-Thin", size: 16.0)! 
1

这为我工作。将此代码写在您的标签声明下方。

它将所有UILabel设置为在相同字体的函数下。

[[UILabel appearance]setFont:[UIFont fontWithName:@"HelveticaNeue-Thin" size:32.0f]]; 

要设置字体为特定的UILabel使用此代码:

[labelName setFont:[UIFont fontWithName:@"HelveticaNeue-Thin" size:15.0f]]; 
+0

这似乎也适用于我,但是使用谷歌搜索表明它不应该工作,困惑。 – Jules

相关问题