web-dev-qa-db-ja.com

Font-AwesomeをObjective-CまたはXcodeプロジェクトでSwiftと統合して使用する方法は?

だから私はこのフォントを使用しようとしています http://fortawesome.github.com/Font-Awesome/ 。フォントをリソースとして追加し、plistファイルに追加しました。私はそれをどのように使用しているのですか:

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

ただし、これは機能しません。 Xcodeプロジェクトでこのフォントを使用する方法を知っている人はいますか?

32
adit

あなたの+[NSString stringWithFormat:]メソッドには、NSStringではなくunicharのリテラルが含まれています。NSStringは、%@を使用するオブジェクトです。

8
CodaFi

InSwift

Font Awesome Cheatsheet。

「Font Awesome」というフォントをXcodeプロジェクトに統合する方法に関するチュートリアル

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)
15
King-Wizard

XCodeを使用したFAのベストソリューション:

  1. 必要なアイコンをコピーします http://fontawesome.io/cheatsheet/ (アイコン自体をマークしてコピーします):

enter image description here

  1. 次に、ストーリーボードとそのプロパティにラベルを追加します。

enter image description here

  • RED-FontAwesomeをファミリーとして選択
  • 緑-必要なサイズを設定します
  • 青-最初のステップでコピーしたものをここに貼り付けます。 (疑問符については心配しないでください-ビューでは適切に表示されるはずです)。

それだけです。

コード内のアイコンを変更する必要がある場合は、コード内に最初のステップを貼り付けることもできます:enter image description here

15
Danielle

これが適切に機能するかどうかはわかりませんが、githubにはいくつかのNiceプロジェクトがあります:

https://github.com/alexdrone/ios-fontawesome -FontAwesomeを使用した基本的なヘルプを提供するNSStringのカテゴリを提供します。

および https://github.com/leberwurstsaft/FontAwesome-for-iOS は、fontAwesomeIconStringForIconIdentifierおよびUIImageViewサブクラスを持つNSStringカテゴリを提供します:FAImageView

14
ocodo

\uを付けることで、リテラルコード文字列を使用できます。

例えば次のスニペットを使用して、iOSアプリで\f030を使用できます。

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

7
Jais

ライブラリを使用することもできます FontAwesome + iOS for iOS

次に、このコードを使用するだけです。

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

だから、私はSwift&Objective C both。のために答えることができます。ここでSwift 3.0を使用して)

フォントの素晴らしいファイルの追加と設定、ストーリーボードの編集

ここからfont-awesomeをダウンロードしてください:fontawesome.ioし、プロジェクトに.ttfを追加します

詳細については、以下の画像を確認してください...

follow the sequence given in the image

コーディング部分

Swift 3.0

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

目的C

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

そして、あなたがまだトラブルに直面しているなら、ここにあります

ソースコード全体

4
Kirit Modi

以下は、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]];
3

次のコードを使用してすべてのフォントをNSLogし、正確な名前を指定します。

 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]);
        }
    }
2
Gaurav

私はSwift3のヘルパーライブラリを探していましたが、これは非常にシンプルで実用的なソリューションであることがわかりました https://github.com/Syndicode/FontAwesomeKitSwift 。それは私のような初心者のためにそれを含めて素早く使用する方法を説明するアニメーションを持っています。

1
Anton

セルのラベルテキストの例を次に示します。

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

上記のようにフォント名が正しいことを確認してください。

0
Kurt Madel

誰かが疑問に思っている場合は、次を.mファイルにインポートしてください。

import "NSString+FontAwesome.h"
0
Gangani Roshan

ライブラリをSwift言語で作成しました。UILabelUIButtonUIBarButtonItemを簡単に統合できます。Podもサポートしています。 Font Awesome Swift

0
vaberer

質問を投稿した日付を見て、この回答が役に立つかどうかはわかりませんが...現時点でそれをしている人を助けるために、

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

setTitle:@ "o" oはフォントの名前です。unicharを使用せず、代わりにフォントを別の文字に変更してください。たとえば、fontello.comをチェックし、アイコンを選択して、あなたの一番上のアイコンには小さなボックスがあり、それを任意の文字に変更します。

十分に明確でない場合は叫ぶ、私は別の方法で説明しようとします。

0
Popez del Rey

これは他の誰かに役立つかもしれません...私は私のプロジェクトでFont Awesomeアイコンの約90%を使用していましたが、そのうちのいくつかを正しく表示できませんでした。代わりに「...」アイコンが表示されます。

Objective-Cでユニコード文字を数時間調査した後、私は間違ったツリーを探していることに気付きました! 「...」はFontAwesomeのアイコンではありません。UIKitは、UILabelのフレームが小さすぎる/フォントが大きすぎてテキスト文字列を表示できないことを示しています。ああ.

0
jt_uk