使用Fonts in XML功能,您可以指定字体系列的各种字体重量。例如:如何在XML中使用指定的字体重量
<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<font android:font="@font/archivo_narrow_regular" android:fontWeight="400" android:fontStyle="normal"
app:font="@font/archivo_narrow_regular" app:fontWeight="400" app:fontStyle="normal"/>
<font android:font="@font/archivo_narrow_regular_italic" android:fontWeight="400" android:fontStyle="italic"
app:font="@font/archivo_narrow_regular_italic" app:fontWeight="400" app:fontStyle="italic"/>
<font android:font="@font/archivo_narrow_medium" android:fontWeight="500" android:fontStyle="normal"
app:font="@font/archivo_narrow_medium" app:fontWeight="500" app:fontStyle="normal"/>
<font android:font="@font/archivo_narrow_medium_italic" android:fontWeight="500" android:fontStyle="italic"
app:font="@font/archivo_narrow_medium_italic" app:fontWeight="500" app:fontStyle="italic"/>
<font android:font="@font/archivo_narrow_semibold" android:fontWeight="600" android:fontStyle="normal"
app:font="@font/archivo_narrow_semibold" app:fontWeight="600" app:fontStyle="normal"/>
<font android:font="@font/archivo_narrow_semibold_italic" android:fontWeight="600" android:fontStyle="italic"
app:font="@font/archivo_narrow_semibold_italic" app:fontWeight="600" app:fontStyle="italic"/>
<font android:font="@font/archivo_narrow_bold" android:fontWeight="700" android:fontStyle="normal"
app:font="@font/archivo_narrow_bold" app:fontWeight="700" app:fontStyle="normal"/>
<font android:font="@font/archivo_narrow_bold_italic" android:fontWeight="700" android:fontStyle="italic"
app:font="@font/archivo_narrow_bold_italic" app:fontWeight="700" app:fontStyle="italic"/>
</font-family>
但我无法弄清楚如何实际使用这些权重;可以使用XML(布局/样式)文件或Java代码。它们不是fontWeight
属性可用于TextView
,并且Typeface
从ResourcesCompat.getFont(context, R.font.archivo_narrow)
创建的对象没有提及字体权重。
我意识到我可以指定特定的字体资源(即R.font.archivo_narrow_semibold
),但在font-family
中拥有fontWeight
属性有什么意义?
是的,但我怎么* *使用各种字体的权重? – Bryan
不要重量来单独识别字体?你能给我举个例子吗? –
我可以在''标签中指定'font-weight'属性,但是我找不到在我的代码中任何地方引用* font-weight属性的方法。我可以*设定*重量,我不能*使用*重量)。有一个['textStyle'](https://developer.android.com/reference/android/widget/TextView.html#attr_android:textStyle)属性,但你只能指定'bold','italic'或'bold | italic'。例如,没有“semibold”。 – Bryan