当我定义一个TextView在xml,我如何添加一个新的行?\n似乎不起作用。

<TextView
   android:id="@+id/txtTitlevalue"
   android:text="Line1 -\nLine2"
   android:layout_width="54dip"
   android:layout_height="fill_parent"
   android:textSize="11px" />

当前回答

尝试了以上所有方法,我自己做了一些研究,得出了以下渲染换行转义字符的解决方案:

string = string.replace("\\\n", System.getProperty("line.separator"));

使用replace方法,您需要过滤转义换行符(例如。' \ \ \ n ') 只有这样换行'\n'转义字符的每个实例才会呈现为实际换行

在这个例子中,我使用了一个带有JSON格式数据的谷歌应用程序脚本noSQL数据库(ScriptDb)。

欢呼:D

其他回答

一种方法是使用Html标签::

txtTitlevalue.setText(Html.fromHtml("Line1"+"<br>"+"Line2" + " <br>"+"Line3"));

尝试System.getProperty(“line.separator”);

需要保留

1.android:maxLines="no of lines"

2.并使用\n获取下一行

我只是解决了同样的问题,把下面的属性在xml

android:lines="2" android:maxLines="4" android:singleLine="false"

work. html . fromhtml ("text1 <br> text2"). tostring()也工作。

对我来说,解决方案是在布局中添加以下一行:

<LinearLayout
    xmlns:tools="http://schemas.android.com/tools"
    ...
    >

\n在可视编辑器中显示为新行。希望能有所帮助!