我正在创建UILabel,对于标签我可以将字体名称设置为HelveticaNeue Regular,Light,UltraLight等,但是我无法将字体名称设置为HelveticaNeue Thin,它无法按预期工作。我确实喜欢,
label.font = [UIFont fontWithName:@"HelveticaNeue-Thin" size:16];
我也搜索过谷歌没有得到任何解决方案。如何解决这个问题?感谢。
答案 0 :(得分:21)
此字体与iOS 7捆绑在一起,因此,如果您的目标是iOS 7及以上
label.font = [UIFont fontWithName:@"HelveticaNeue-Thin" size:16.0f];
会奏效。
但是,如果您的目标是iOS 6.1及更低版本,则需要embed the font
答案 1 :(得分:16)
更新了支持swift的答案
let font = UIFont(name: "HelveticaNeue-Thin", size: 16.0)!
答案 2 :(得分:2)
UIFontDescriptor *helveticaNeueFamily =
[UIFontDescriptor fontDescriptorWithFontAttributes:
@{ UIFontDescriptorFamilyAttribute: @"Helvetica Neue" }];
NSArray *matches =
[helveticaNeueFamily matchingFontDescriptorsWithMandatoryKeys: nil];
如图所示的matchingFontDescriptorsWithMandatoryKeys:方法返回系统中所有Helvetica Neue字体的字体描述符数组,例如HelveticaNeue,HelveticaNeue-Medium,HelveticaNeue-Light, HelveticaNeue-Thin 等等上。
您可以修改preferredFontForTextStyle返回的字体:应用符号特征,例如粗体,斜体,展开和浓缩。您可以使用字体描述符来修改特定的特征,如清单9-2所示。
引用或
此字体无法直接应用。
因此您可以自定义字体
答案 3 :(得分:1)
这对我有用。将此代码写在标签声明下方。
它在具有相同字体的函数下设置所有UILabel 。
[[UILabel appearance]setFont:[UIFont fontWithName:@"HelveticaNeue-Thin" size:32.0f]];
要将字体设置为特定UILabel ,请使用以下代码:
[labelName setFont:[UIFont fontWithName:@"HelveticaNeue-Thin" size:15.0f]];