如何在android中的TextView中缩进文本行?

时间:2014-04-21 11:27:21

标签: android

我正在android中编写一个文本,现在需要两行以上,我的问题是如何缩进文本行的第二行。

1.my name is qadeer hussain

iam fine how  Ru.

但我想要

1.my name is qadeer hussain

     iam fine how  Ru.

这里第二行不是从一行开始,而是在名称

正下方

3 个答案:

答案 0 :(得分:18)

LeadingMarginSpan.Standard使用SpannableString,或者如果您还需要子弹使用BulletSpan

只需创建一个这样的函数:

static SpannableString createIndentedText(String text, int marginFirstLine, int marginNextLines) {
    SpannableString result=new SpannableString(text);
    result.setSpan(new LeadingMarginSpan.Standard(marginFirstLine, marginNextLines),0,text.length(),0);
    return result;
}

然后,每当你需要一条缩进线时,你可以这样做:

myTextView.setText(createIndentedText("my text that's gonna be indented", 10, 10));

第一个参数是第一行的缩进,第二个参数是下一行的缩进,以防你想要将第一行缩进到下一行。

答案 1 :(得分:4)

您可以使用\ t作为间距,使用\ n作为新行。您可以根据需要为文本使用尽可能多的新行和\ t间距。以你的例子:

    textView.setSingleLine(false);
    textView.setText("1.my name is qadeer hussain\n\tiam fine how  Ru.");

答案 2 :(得分:2)

尝试在缩进之前使用\t。如果您需要进一步缩进,请使用更多