Android デバイスのデフォルトフォントを使用する場合:#
<!--アプリのテーマまたは必要な場所のテーマでスタイルを設定します-->
<style name="CustomStyle" parent="AppBaseTheme">
<item name="android:textViewStyle">@style/CustomFontStyleText</item>
<item name="android:buttonStyle">@style/CustomFontStyleButton</item>
</style>
<!--設定するコントロールでフォントスタイルを設定します-->
<style name="CustomFontStyleText" parent="android:Widget.TextView">
<item name="android:fontFamily">あなたのフォント名</item>
</style>
<style name="CustomFontStyleButton" parent="android:Widget.Holo.Button">
<item name="android:fontFamily">あなたのフォント名</item>
</style>
注意:テーマの親テーマが AppCompat テーマ(例:Theme.AppCompat.Light.DarkActionBar)の場合、android:fontFamily
を設定する際にandroid:
を削除する必要があります。つまり、上記の 2 行目を次のように置き換えます:
<item name="android:fontFamily">CustomStyle</item>
その後、Manifest ファイルでテーマを設定するだけです。
<!--アプリケーションのテーマに設定する場合-->
<application
android:theme="@style/AppTheme" >
</application>
カスタムフォントを使用する場合:#
多くの場合、ユーザーの実行環境は統一されていませんので、開発時に必要なフォントを事前に配置する必要があります。フォントを配置する具体的な場所:リソースフォルダ内にフォントフォルダを作成するだけです。
使用方法:
<style name="CustomStyle" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:fontFamily">@font/あなたのフォント</item>
<item name="fontFamily">@font/あなたのフォント</item>
</style>
その後、Manifest ファイルでテーマを設定するだけです。
<!--アプリケーションのテーマに設定する場合-->
<application
android:theme="@style/AppTheme" >
</application>
注意:
サポートライブラリ 26.0 では、「XML 内のフォント」機能が Android 4.1(API レベル 16)以上のデバイスで使用できます。詳細なカスタマイズ方法については、公式ドキュメントを参照してください:https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml
以上がフォントの変更方法です。他にも、コントロールを走査してフォントを設定したり、カスタムビューでフォントを設定したりする方法もあります。これらの方法はすべて使用できますが、実際のテストでは一部のフォントが適切であり、グローバルに使用する場合にリソースの使用量が高くなるため、上記の第 2 の方法をお勧めします。