Android系统中设置TextView的行间距

Android系统中TextView默认显示中文时会比较紧凑,不是很美观。
为了让每行保持一定的行间距,可以设置属性android:lineSpacingExtraandroid:lineSpacingMultiplier

1、设置行间距:android:lineSpacingExtra,取值范围:正数、负数和0,正数表示增加相应的大小,负数表示减少相应的大小,0表示无变化。

2、设置行间距的倍数:android:lineSpacingMultiplier,取值范围:浮点数,如果值大于1.0表示增加行间距,如果值小于1.0表示减少行间距,等于1.0时表示无变化。

3、代码中设置行间距和倍数:TextView.setLineSpacing(float add, float mult)。
参数add表示要增加的行间距数值,对应android:lineSpacingExtra属性;参数mult表示行间距倍数,对应android:lineSpacingMultiplier属性。

示例


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/black"
    android:gravity="center"
    android:orientation="vertical">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="end"
        android:maxLines="3"
        android:text="海底火山的喷发会产生大量的有毒气体,这些有毒气体会与水发生化学反应,产生酸性物质,而酸性物质反而会促进火焰的蔓延"
        android:textColor="@android:color/white" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="end"
        android:lineSpacingMultiplier="0.5"
        android:maxLines="3"
        android:text="海底火山的喷发会产生大量的有毒气体,这些有毒气体会与水发生化学反应,产生酸性物质,而酸性物质反而会促进火焰的蔓延"
        android:textColor="@android:color/holo_green_dark" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="end"
        android:lineSpacingMultiplier="1.5"
        android:maxLines="3"
        android:text="海底火山的喷发会产生大量的有毒气体,这些有毒气体会与水发生化学反应,产生酸性物质,而酸性物质反而会促进火焰的蔓延"
        android:textColor="@android:color/holo_red_dark" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="end"
        android:maxLines="3"
        android:text="海底火山的喷发会产生大量的有毒气体,这些有毒气体会与水发生化学反应,产生酸性物质,而酸性物质反而会促进火焰的蔓延"
        android:textColor="@android:color/white" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="end"
        android:lineSpacingExtra="-10dp"
        android:maxLines="3"
        android:text="海底火山的喷发会产生大量的有毒气体,这些有毒气体会与水发生化学反应,产生酸性物质,而酸性物质反而会促进火焰的蔓延"
        android:textColor="@android:color/holo_green_dark" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="end"
        android:lineSpacingExtra="10dp"
        android:maxLines="3"
        android:text="海底火山的喷发会产生大量的有毒气体,这些有毒气体会与水发生化学反应,产生酸性物质,而酸性物质反而会促进火焰的蔓延"
        android:textColor="@android:color/holo_red_dark" />

LinearLayout>

效果:

Android系统中设置TextView的行间距_第1张图片

你可能感兴趣的:(android)