UILabelでカスタムフォントを表示する

iOSではシステムがいくつかフォントを用意してくれていますが、
時には独自でフォントを用意して表示したい時があると思います。

その時の手順を軽くまとめました。

また、カスタムフォントが適用されずにハマった部分も掲載してあります。
それに関してはこちらへジャンプして下さい。

[環境]
Xcode 5.1.1
iOS SDK 7.1.1

おおざっぱな手順


1. .ttfファイルをプロジェクトに追加
2. [AppName]-Info.plistにフォントを追加
3. UIAppearanceまたは単独ラベルに対してsetFontでカスタムフォントを指定

1. .ttfファイルをプロジェクトに追加

この辺分からなければ他のブログを参考にして下さい。
その際、Targetに入っている事つまりCopy Bundle Resourcesに入っている事をしっかり確認して下さい。

2. [AppName]-Info.plistにフォントを追加

Key名は”Fonts provided by application”です。配列型ですので、二つ以上登録したい場合はItem 0, Item 1,,,と言う感じで追加して下さい。

3. UIAppearanceまたは単独ラベルに対してsetFontでカスタムフォントを指定

俺が今回ブログを書こうと思ったのはこちらの部分です。

主にサンプルとして紹介されているカスタムフォント適用例は以下。

label.font = [UIFont fontWithName:@"CustomFontName" size:label.font.pointSize];

※UIAppearanceで定義したかったのですが、sizeがlabelインスタンスによってまちまちなので定義出来ません。
この辺上手い書き方が出来てる人いたら教えてください!!!

ここに正しい(はずの)フォントネームを指定しているはずなのに適用されない!なんで!
って思ったんですが、こちらのリンクを見て解決しました。
つまり、ファイル名ではなくフォント名を指定しなければいけないと言う事でした。

このフォント名とはFinderでフォントの情報を表示した”フルネーム”と言う欄に書いてある文字列です。

スクリーンショット_2014-08-07_15_12_03

ここを指定する事により無事適用されました。

誰かのお役に立てば。

コメント

タイトルとURLをコピーしました