令人惊讶的是,我似乎找不到另一个类似的问题……如果我错过了什么显而易见的东西,请原谅。
我正在尝试在我的iPhone应用程序中以编程方式使用Helvetica Neue Light字体。看起来系统没有内置此字体,这似乎很奇怪。
是这样吗?这种特定字体需要手动添加吗?
理想情况下,我希望编辑此行代码以实现此目的:
myLabel.font = [UIFont fontWithName:@"HelveticaNeue" size: 32];
令人惊讶的是,我似乎找不到另一个类似的问题……如果我错过了什么显而易见的东西,请原谅。
我正在尝试在我的iPhone应用程序中以编程方式使用Helvetica Neue Light字体。看起来系统没有内置此字体,这似乎很奇怪。
是这样吗?这种特定字体需要手动添加吗?
理想情况下,我希望编辑此行代码以实现此目的:
myLabel.font = [UIFont fontWithName:@"HelveticaNeue" size: 32];
Objective-C
myLabel.font = [UIFont fontWithName:@"HelveticaNeue-Light" size:32.0f];
Swift
myLabel.font = UIFont(name: "HelveticaNeue-Light", size: 32.0)
在iOS Fonts网站上,您可以找到完整的字体列表及其名称。
Swift 3更新
在过去的几个月中,Swift对于init
的处理方式已经发生了变化,我建议不要在Swift 3中使用init
。
label.font = UIFont(name: "HelveticaNeue-Light", size: 17.0)
Objective- C :
[label setFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:17.0f]];
Swift 2.2 :
label.font = UIFont.init(name: "HelveticaNeue-Light", size: 17.0)
更新:
这对我很有用。在您的标签声明下面编写以下代码。
它将所有UILabel设置为具有相同字体的函数。
Objective-C:
[[UILabel appearance]setFont:[UIFont fontWithName:@"HelveticaNeue-Thin" size:32.0f]];
Swift 2.2 :
UILabel.appearance().font = UIFont.init(name: "HelveticaNeue-Thin", size: 32.0)
[labelName setFont:[UIFont fontWithName:@"HelveticaNeue-Thin" size:15.0f]];
Swift 2.2 :
label.font = UIFont.init(name: "HelveticaNeue-Light", size: 17.0)
如果您喜欢使用UIFont,请打印所有字体名称,我有一个建议,这样在未来您就能始终获得正确的字体名称。
您只需要将该方法粘贴到类中的某个地方,就可以获取所有系统字体的列表。
-(void)fontNames{
NSArray *familyNames = [UIFont familyNames];
[familyNames enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop){
NSLog(@"* %@",obj);
NSArray *fontNames = [UIFont fontNamesForFamilyName:obj];
[fontNames enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop){
NSLog(@"--- %@",obj);
}];
}];
}