如何在TextView中设置文本的行间距

3
txt.setText("abc \n defgh");

我希望行距可以设置为特定数值,比如5 dp。

abc
'5dp range'
defgh

在这个上下文中,“range”是什么意思? - CommonsWare
“range” 是什么意思? - allo86
单词间距。对不起,我的英语不好 :) - Emre Aydemir
在xml中使用行间距: - user6490462
将一个TextView的marginBottom设置为5dp。 - Emre Aydemir
之前我没有看到。 - Emre Aydemir
3个回答

3
请查看 android:lineSpacingExtra (https://developer.android.com/reference/android/widget/TextView.html#attr_android:lineSpacingExtra) 和 android:lineSpacingMultiplier (https://developer.android.com/reference/android/widget/TextView.html#attr_android:lineSpacingMultiplier),这两个属性与行间距相关。使字体的行间距变得更宽或者更窄,并且可以在XML布局中直接设置。
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:lineSpacingExtra="5dp"
    android:text="abc \n defgh"/>

3
我将向您展示如何完成此操作。
首先:有两种方法可以做到这一点。

设计 (.xml) 我将把它们分开:(全名) 和 (年份)

<TextView
    android:id="@+id/notice_event"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:maxLines="2"
    android:text="Gustavo Tufiño Fernández \n 21 Years Old"/>

很不错的解决方案,但如果你想动态地执行这个操作,你会怎么做呢?

类(Activity/Fragment/Adapters)动态表单

    @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            // put values I need in String variables
            String title = listNoticiasEventosFinal.get(0).getTitle();
            String detail = listNoticiasEventosFinal.get(0).getDescription();

            //Concat Strings with linespace and put int TextView
            String final_text = title + System.getProperty ("line.separator") + detail;
            TextView textView = (TextView) findViewById(R.id.notice_event);
            textView.setText(final_text);
    }

我希望我能帮助你,祝好(Y)

0

你可以使用"lineSpacingExtra"。它会起作用的,愉快编程!

<TextView
    android:layout_width="match_parent"
    android:layout_height="180dp"
    android:lineSpacingExtra="10dp"/>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接