如何在Xcode项目中集成和使用Objective-C或Swift的Font Awesome?

所以我想用这个字体http://fortawesome.github.com/Font-Awesome/ 。 我已经添加了字体作为资源,并把它放在plist文件中。 以下是我如何使用它:

[homeFeedButton.titleLabel setFont:[UIFont fontWithName:@"fontawesome" size:8]]; NSString *str = [NSString stringWithFormat:@"%C", @"\f030"]; 

但是这不起作用。 有谁知道如何在Xcode项目中使用这种字体?

这是因为你的+[NSString stringWithFormat:]方法包含unichar的文字,而不是NSString,它是一个使用%@的对象,因为字面意义是多余的,

不知道你有没有这个工作正常,但现在有一些好的项目在github上:

https://github.com/alexdrone/ios-fontawesome – 它给你一个NSString的类别,它使用FontAwesome提供基本的帮助。

https://github.com/leberwurstsaft/FontAwesome-for-iOS它给你一个NSString类与fontAwesomeIconStringForIconIdentifier和一个UIImageView子类: FAImageView

Swift中

字体真棒Cheatsheet。

关于如何在Xcode项目中集成字体“Font Awesome”的教程。

添加自定义字体到您的iOS应用程序的常见错误

 let label = UILabel(frame: CGRectMake(0, 0, 100, 100)) label.font = UIFont(name: "FontAwesome", size: 40) let myChar: UniChar = 0xF180 label.text = String(format: "%C", myChar) self.view.addSubview(label) 

FA与XCode的最佳解决scheme:

  1. 复制你想要从http://fontawesome.io/cheatsheet/ (我的意思是标记和复制图标本身)的图标:

在这里输入图像说明

  1. 然后为您的故事板和其属性添加一个标签:

在这里输入图像说明

  • 红色 – selectFontAwesome作为家庭
  • 绿色 – 设置你想要的大小
  • 蓝色 – 在此处粘贴您在第一步中复制的内容。 (不要担心问号 – 在视图中你应该看到它)。

而已。

如果您需要更改代码中的图标 – 您可以在代码中粘贴第一步: 在这里输入图像说明

你可以使用文字代码string加上\u

例如,您可以使用以下代码片段在您的iOS应用程序中使用\f030

[[[UILabel alloc] initWithFrame:CGRectZero] setText:@"\uf030"];

您也可以使用iOS的FontAwesome + iOS库

那么你只需要使用这个代码:

 label.text = [NSString fontAwesomeIconStringForIconIdentifier:@"icon-github"]; // or: label.text = [NSString fontAwesomeIconStringForEnum:FAIconGithub]; 

所以,我可以用Swift和Objective C来回答这个问题。 (在这里使用Swift 3.0)

添加和configuration字体真棒文件和编辑故事板

只需从这里下载font-awesome:fontawesome.io并将.ttf添加到您的项目中

查看下面的图片了解更多详情…

按照图中给出的顺序

现在是编码部分

Swift 3.0

 let iconUniChar: UniChar = 0xf113 textLabel.text = String(format: "%C", iconUniChar) 

目标C

 _textLabel.text = [NSString stringWithFormat:@"%C", 0xf113]; 

而且,如果你还在这里遇到麻烦的话

完整的源代码

NS使用以下代码logging您的所有字体并提供确切的名称。

  NSArray *familyNames = [[NSArray alloc] initWithArray:[UIFont familyNames]]; NSArray *fontNames; NSInteger indFamily, indFont; for (indFamily=0; indFamily<[familyNames count]; ++indFamily) { NSLog(@"Family name: %@", [familyNames objectAtIndex:indFamily]); fontNames = [[NSArray alloc] initWithArray: [UIFont fontNamesForFamilyName: [familyNames objectAtIndex:indFamily]]]; for (indFont=0; indFont<[fontNames count]; ++indFont) { NSLog(@" Font name: %@", [fontNames objectAtIndex:indFont]); } } 

FontAwesome字体名称如下所示:FontAwesome

尝试[UIFont fontWithName:@"FontAwesome" size:8]]

观看此video教程可能会有所帮助:http: //youtu.be/J1EHAS0icv0 。

下面是使用FontAwesome将图像设置为UIButton的代码

  UIButton *btnMenu = [UIButton buttonWithType:UIButtonTypeCustom]; btnMenu.frame = CGRectMake(0, 0, 40, 32); [btnMenu setTitle:@"\uf0c9" forState:UIControlStateNormal]; [btnMenu setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; [btnMenu.titleLabel setFont:[UIFont fontWithName:@"FontAwesome" size:16]]; 

我正在寻找Swift3的助手库,发现这是非常简单的工作解决schemehttps://github.com/Syndicode/FontAwesomeKitSwift3 。 它有animation,解释像我这样的新手如何包括它,并迅速使用。

为了使用自定义字体,请确保您在plist和这里给出的字体名称具有相同的真实名称。我的意思是字体的名称应该与通常的名称相同。不要尝试修改name.Check如果你使用的字体的名字真的是这个字体的名字。

谢谢桑杰

这是一个单元格的标签文本的例子:

 cell.textLabel.font = [UIFont fontWithName:@"FontAwesome" size:12]; cell.textLabel.text = @"\uf000"; 

确保你得到正确的字体名称如上所述。

不知道这个答案是有用的,看你发布你的问题的date….但是为了帮助某人也许现在正在做这件事,

[self.homefeedbutton setTitle:@“o”forState:UIControlStateNormal]; [self.homefeedbutton.titleLabel setFont:[UIFont fontWithName:@“fontawesome”size:30]];

setTitle:@“o”o是字体的名称,不要使用unichar,而应将字体重命名为其他更可取的字母,例如,如果选中fontello.com,select图标,然后单击自定义代码选项卡有一个小盒子,把它改成任何字母….

如果不够清楚,我会尽量以不同的方式解释。

我已经用UIBarButtonItem语言制作了一个图书馆,可以轻松整合UILabelUIButtonUIBarButtonItem 。 也支持Pods。 字体真棒Swift

这可能有助于其他人…我有大约90%的字体真棒图标在我的项目中工作,除了less数他们我无法让他们正确显示。 他们会改为显示一个“…”图标。

在Objective-C中,经过了几个小时的调查unicode字符,我意识到我正在咆哮错误的树! “…”不是一个FontAwesome图标,它的UIKit告诉我,UILabel的框架太小/字体太大,不能显示文本string! D'哦。