预设尺寸

在 Java 中:

调用 setAutoSizeTextTypeUniformWithPresetSizes() 方法:

setAutoSizeTextTypeUniformWithPresetSizes(int[] presetSizes, int unit)

在 XML 中:

在布局 XML 文件中使用 autoSizePresetSizes 属性:

<TextView android:id=”@+id/autosizing_textview_presetsize” 
        android:layout_width=”wrap_content” 
        android:layout_height=”250dp” 
        android:layout_marginLeft=”0dp” 
        android:layout_marginTop=”0dp” 
        android:autoSizeText=”uniform” 
        android:autoSizePresetSizes=”@array/autosize_text_sizes” 
        android:text=”Hello World!” 
        android:textSize=”100sp” 
        app:layout_constraintLeft_toLeftOf=”parent” 
        app:layout_constraintTop_toTopOf=”parent” />

要将数组作为资源访问,请在 res / values / arrays.xml 文件中定义该数组 :

<array name=”autosize_text_sizes”>
    <item>10sp</item>
    <item>12sp</item>
    <item>20sp</item>
    <item>40sp</item>
    <item>100sp</item>
</array>

有关更多详细信息,请查看 GitHub 上的 AutosizingTextViews-Demo