リファレンス・カスタマイズ

【Android Studio】カスタムフォントを使用する方法(Javaコード編)

 

この記事では Java コードでカスタムフォントを使用する方法を紹介します。
 

デフォルト
カスタム

 
 

Java コードを使わない方法、アプリ全体のフォントを一括で変更する方法はこちらをお読みください。

【Android Studio】カスタムフォントをアプリ全体に一括・部分的に反映させる方法 以前の記事で Android Studio でカスタムフォントを使用する方法を紹介しました。 その記事では TextVie...

 
 


 

動画

【Android Studio】カスタムフォントを使用する方法(Javaコード編)

開発環境
Android Studio: 4.1
Emulator: Nexus 4 (API 30)
 
 
 

解説

準備

プロジェクトの作成

このサンプルでは Custom Font という名前のプロジェクトを作成して MainActivity.java と activity_main.xml があることを前提に進めていきます。

プロジェクト名などは、ご自身のプロジェクトに合わせて変更してください。


 
 
 

フォントの用意

使いたいフォントファイルをご用意ください。ファイル形式は otf・ttf のどちらでも大丈夫です。

このサンプルでは Google Fonts でダウンロードした Sofia というフォントを使います。
* フォントをダウンロードするときは利用規約にご注意ください。

 
 

assets フォルダの作成

フォントファイルは assets フォルダに置く必要があります。

プロジェクト作成時点では assets フォルダは作成されていないので、まずはこのフォルダを作成します。
 

Android Studio 画面左側の app フォルダの上で右クリックして、New → Folder → Assets Folder を選択します。


 
 

Target Source Set が「main」になっていることを確認して Finish を押します。


 
 

assets フォルダが作成されました。


 
 
 

フォントファイルを置く

assets フォルダの上で右クリックして、Mac の場合は Reveal in Finder、Windows の場合は Show in Explorer を選択します。


 
 

assets フォルダ内にフォントファイルを置いてください。


 
 

このようにフォントファイルが追加されていれば準備完了です。


 
 
 

activity_main.xml

カスタムフォントを使いたい TextView などの要素に id をセットします。

ここでは TextView に id を指定しました。(2行目)

 
 
 

MainActivity.java

TextView にカスタムフォントを反映させます。

MainActivity.java を開いて、16~18行目を追加します。

 
 

必要な import

コードを入力していると、このように Typeface の部分が赤くなり、青いメッセージが出るかもしれません。


 

青いメッセージが出ている状態で altreturn を同時に押して、android.graphics.Typeface をインポートしてください
 

以下のように import android.graphics.Typeface; が追加されると警告が消えます。


 
 

16行目

Typeface customFont = Typeface.createFromAsset(getAssets(), "Sofia-Regular.ttf");

assets フォルダからフォントファイルを読み込んでいます。

フォントのファイル名に間違いがないように注意してください。
 
 

複数のフォントファイルを使いたい場合
複数のフォントファイルを読み込んで使用することもできます。

Typeface fontSophia = Typeface.createFromAsset(getAssets(), "Sofia-Regular.ttf");
Typeface fontOpenSans = Typeface.createFromAsset(getAssets(), "OpenSans-Bold.ttf");

myText1.setTypeface(fontSophia);
myText2.setTypeface(fontOpenSans);

 
 
 

完成

このように TextView のフォントが変わっていれば完成です!


 

上手く動かない場合は以下のサンプルコードをご確認ください。
 
 
 

サンプルコード

activity_main.java

 

MainActivity.java

 

ABOUT ME
Sara
「わかりやすく・シンプル」をモットーに、スマホアプリ・ウェブアプリの作り方を紹介します。 独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています🙂
guest
0 Comments
Inline Feedbacks
View all comments
0
この記事にコメントするx