Android Return 字符串中的行 (\n)

Android Return Line (\n) in String

在android中,可以使用

在XML中创建字符串资源
<string name="name">data</string>

要创建一个新行,可以使用 \n。但是,如果用户亲自将数据输入到 EditText 中并包含 \n,则写入内容将保存到 String 中,当写入内容再次显示在 TextView 中时,结果将如下所示:

Line 1\nLine2

为什么 \n 不适用于用户编写的字符串?

我的最终目标是让用户在字符串中输入 \n 以确保 String 显示在多行中。

这将如何实现?提前致谢!

你如何在 textView 中执行 setText()。

试试这个...

TextView view = your text view;
view.setSingleLine(false);
view.setText("first line\n"+"second line\n"+"third line");

在输入字段中输入的文本用作实际文本。这意味着,当用户输入 Hello \n World 并且代码调用 getText().toString() 时,实际 returned 的内容是: Hello \n World 这意味着,它是实际的斜杠符号,而不是"carriage return" 符号。

我不相信 android 有任何内置 API 可以为您提供用户键入的实际代码,这意味着您必须自己编写该代码。如果您只需要 \n 作为马车 return 就很简单:

getText().toString().replace("\n", "\n");

System.getProperty("line.separator")

您会得到一个字符串,它会生成一个新行。 我会用这个表达式替换 \n。

使用这个:

TextView view = your text view;
view.setSingleLine(false);

view.setText("first line" + "\n" + "second line" + "\n" + "third line");