Android でアイコン作るときは、まぁ普通は Action Bar Icon Pack とかをよく使うと思う。自分もそれを好んで利用していた。
ただ、これには以下のような欠点がある。
- 使う画像を利用する度にコピーするがだるい
- 要領がどんどん大きくなる
- 種類が少ない
さて、それらを解決してくれるのが Font Awesome を利用したアイコン生成方法だ。
設定方法
まずは Font Awesomeからアイコンパックをダウンロード。
その中の fonts -> fontawesome-webfont.ttf を Android プロジェクトの assets ディレクトリに保存。なければ java とかと同じ階層に作る。
使いたいアイコンを チートシート から探す。
strings.xml に以下を追記
<string name="icon_fb"></string>
layout はこんな感じ
<TextView android:id="@+id/fb_icon" android:text="@string/icon_fb" android:textSize="@dimen/text_large" android:textColor="@color/com_facebook_blue" android:layout_width="wrap_content" android:layout_height="wrap_content" />
アクティビティ内に以下を記述
Typeface font = Typeface.createFromAsset(getAssets(), "fontawesome-webfont.ttf"); ((TextView) findViewById(R.id.fb_icon)).setTypeface(font);
すると、アイコンができる。
Font Awesome にすること
メリットは以下の通り。
- 種類が多い
- 容量節約
- drawable へのコピペは不要
- 色が自由自在
- 大きさもdimens.xmlに書けば画面サイズ毎に大きさを変えられる
色変えられるのはかなりでかい!Actionbar icons pack じゃできなかった。
デメリットはこんなのかな
- 毎回チートシート見てstringsに記入しないといけない
- activityにコード書かないといけない
所感
アイコンのあるアプリは見た目がいいし、直感的にわかりやすし是非導入したい所。最初からFont Awesomeを利用したAndroidプロジェクトにすることをおすすめします。
自分の場合は一部Actionbar icons pack、一部はFont Awesome となってしまった。。Font Awesomeで統一しようかな〜。