使用 Android O 中的字体
Android O 改变了使用字体的方式。
Android O 引入了一项名为 Fonts in XML 的新功能,允许你将字体用作资源。这意味着,不需要将字体绑定为资产。字体现在在 R 文件中编译,并在系统中作为资源自动提供。
要添加新字体,你必须执行以下操作:
- 创建一个新的资源目录:
res/font
。 - 将字体文件添加到此字体文件夹中。例如,通过添加
myfont.ttf
,你将能够通过R.font.myfont
使用此字体。
你还可以通过将以下 XML 文件添加到 res/font
目录来创建自己的字体系列 :
<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
<font
android:fontStyle="normal"
android:fontWeight="400"
android:font="@font/lobster_regular" />
<font
android:fontStyle="italic"
android:fontWeight="400"
android:font="@font/lobster_italic" />
</font-family>
你可以以相同的方式使用字体文件和字体系列文件:
-
**在 XML 文件中,**通过使用
android:fontFamily
属性,例如:<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:fontFamily="@font/myfont"/>
或者像这样:
<style name="customfontstyle" parent="@android:style/TextAppearance.Small"> <item name="android:fontFamily">@font/myfont</item> </style>
-
在你的代码中,使用以下代码行:
Typeface typeface = getResources().getFont(R.font.myfont); textView.setTypeface(typeface);