3

以这个 textview 片段为例:

<TextView
        android:id="@+id/tvTotal"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:gravity="center"
        android:maxLines="3"
        android:padding="10dp"
        android:scrollbars="vertical"
        android:textColor="#FFFFFF"
        android:textSize="30sp"
        android:textStyle="bold"
        app:autoSizeMaxTextSize="100sp"
        app:autoSizeMinTextSize="12sp"
        app:autoSizeStepGranularity="2sp"
        app:autoSizeTextType="uniform"
        app:fontFamily="sans-serif"
        app:lineHeight="60dp"
        android:lineSpacingMultiplier="2.5"
        android:lineSpacingExtra="6dp" />

我有android:textSize="30sp", app:autoSizeMaxTextSize="100sp", 和app:autoSizeMinTextSize="12sp"所有设置。每当我更改android:textSize,它似乎对我的手机没有影响。为什么是这样?另外,设置和设置app:lineHeight时是否有任何影响?这些属性甚至可以做什么?android:lineSpacingMultiplierandroid:lineSpacingExtra

4

1 回答 1

0

如果您删除app:autoSizeTextType="uniform",那么您的代码就可以工作了。因为当你使用时app:autoSizeTextType="uniform",那个时间android:textSize="30sp"不起作用。

不同之处在于android:lineSpacingExtra在 TextView 的文本行之间添加了额外的间距,并android:lineSpacingMultiplier作为行间距高度的比例因子。换句话说,每条线的高度将是height*multiplier + extra

于 2019-03-02T02:59:26.503 回答