我有一个TextView的样式资源
<style name="AppText.Note.Medium">
<item name="android:textFontWeight" tools:targetApi="p">500</item>
</style>
但它只能在API级别28或更高版本上使用。有没有办法在API级别23上使用它?或者可能有其他替代方案吗?
我有一个TextView的样式资源
<style name="AppText.Note.Medium">
<item name="android:textFontWeight" tools:targetApi="p">500</item>
</style>
但它只能在API级别28或更高版本上使用。有没有办法在API级别23上使用它?或者可能有其他替代方案吗?
支持在API 26以下使用字体族
<item name="fontWeight">500</item>
app:fontWeight="500"
替代 android:fontWeight="500"
。 - Dineshandroid:textFontWeight
会生效,但它仅适用于API 28+。 - user924这适用于所有的API级别
<?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
app:font="@font/sdfglay_bold"
app:fontWeight="700"/>
<font
app:font="@font/sdfglay_light"
app:fontWeight="300"/>
<font
app:font="@font/sdfglay_regular"
app:fontWeight="400"/>
<font
app:font="@font/sdfglay_medium"
app:fontWeight="500"/>
<font
app:font="@font/sdfglay_semibold"
app:fontWeight="600"/>
使用这种字体族替代
<com.google.android.material.textview.MaterialTextView
android:id="@+id/postDesc"
android:layout_width="0dp"
android:fontFamily="@font/sdfglay_light"
android:layout_height="wrap_content"
android:layout_marginRight="90dp"
android:ellipsize="end"
android:paddingVertical="8dp"/>
直接使用指定字重的字体
android:fontFamily="@font/sdfglay_light"