使用前景: 在有些多语言需求中 TextView 宽度有限制 为了在不同语言不同机型下可以更完整的展示文本内容 可以使用字体缩放
- 要通过支持库以编程方式定义文本大小范围和尺寸,请调用该 方法。提供最大值、最小值、粒度值和任意维度单位。
TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(int autoSizeMinTextSize, int autoSizeMaxTextSize, int autoSizeStepGranularity, int unit)TypedValue - 要通过支持库在 XML 中定义文本大小范围和维度,请使用命名空间并在布局 XML 文件中
app设置autoSizeText、autoSizeMinTextSize、autoSizeMaxTextSize和 属性。autoSizeStepGranularity
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="match_parent"
android:layout_height="200dp"
app:autoSizeTextType="uniform"
app:autoSizeMinTextSize="12sp"
app:autoSizeMaxTextSize="100sp"
app:autoSizeStepGranularity="2sp" />
</LinearLayout>