线条之间的android textview填充

Çağ*_*ürk 199 android textview

在我的Android项目中,我有一个显示长文本的TextView.我想在行之间给出一些空格,就像我们在CSS中使用line-height属性一样.我们应该怎么做?

Rom*_*Guy 388

您可以在XML文件中使用lineSpacingExtralineSpacingMultiplier.

  • lineSpacingMultiplier适用于浮点值,如:android:lineSpacingMultiplier ="0.8" (11认同)
  • 你能解释一下这是如何工作的?当从这些测量?你能举例说明字体和语言吗?例如,行间距从基线测量,但东亚语言没有基线.哪里是默认的行间距定义?它是字体本身? (7认同)
  • 例如: android:lineSpacingExtra="2dp" (2认同)

sea*_*alz 73

您可以查看android:lineSpacingExtra并将其应用于XML

其他信息在此页面上

或相关的方法 public void setLineSpacing (float add, float mult)

其他信息在这里


小智 67

如果你想在文本之间填充尝试 LineSpacingExtra="10dp"

<TextView
        android:layout_width="match_parent"
        android:layout_height="180dp"
        android:lineSpacingExtra="10dp"/>
Run Code Online (Sandbox Code Playgroud)


Vis*_*das 16

你可以使用TextView.setLineSpacing(n,m)功能.


Sur*_*gch 15

此补充答案显示了更改行距的效果。

在此处输入图片说明

您可以设置乘数和/或额外的间距

textView.setLineSpacing(float add, float mult)
Run Code Online (Sandbox Code Playgroud)

或者您可以通过以下方式获取值

int lineHeight = textView.getLineHeight();
float add = tvSampleText.getLineSpacingExtra();          // API 16+
float mult = tvSampleText.getLineSpacingMultiplier();    // API 16+
Run Code Online (Sandbox Code Playgroud)

公式在哪里

lineHeight = fontMetricsLineHeight * mult + add
Run Code Online (Sandbox Code Playgroud)

默认乘数为1,默认额外间距为0


Aji*_*sen 11

添加android:lineSpacingMultiplier="0.8"可以使行间距达到80%.


Leo*_*ela 10

您可以在 XML 文件中使用lineSpacingExtra或。lineSpacingMultiplier

lineSpacingExtra在 TextView 的文本行之间添加额外的间距

<TextView
    android:lineSpacingExtra="4dp" />
Run Code Online (Sandbox Code Playgroud)

lineSpacingMultiplier作为行空间高度的比例因子:

<TextView
    android:lineSpacingMultiplier="0.8" />
Run Code Online (Sandbox Code Playgroud)

换句话说,每行的高度将为height * multiplier + extra