在XML资源字符串中添加新的行/n似乎是不可能的。还有别的办法吗?


当前回答

使用黑斜线而不是正斜线。\ n

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">Hello\nWorld!</string>
</resources>

同样,如果你计划使用字符串作为HTML,你可以使用&lt;br /&gt;对于换行符(<br />)

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">Hello&lt;br /&gt;World!</string>
</resources>

其他回答

如果你在xml文件的字符串中输入“\n”,它会被当作“\\n”

所以,我做了:

text = text.Replace("\\\n", "\n");   ( text is taken from resX file) 

然后我在屏幕上有一个跳转

您可以使用这种格式

<string name="test">
"This is
a new line"
</string>

最后,我找到了解决办法。 <br/>只在设计上工作,在运行应用程序中不起作用。\n只在运行应用程序上工作,在设计上不起作用 所以如果你想同时得到两个结果,解决办法就是两者都用。 就像这样

\n<br/>

例子:

Hello \n<br/>World.

设计模式的结果: 你好\ n 世界。

运行应用程序的结果: 你好 世界。

不要在\n后面加空格,否则行不通。我不知道原因,但这招对我很管用。

在最新版本的Android studio中,"\n"会像它应该在那里一样被打印出来除非整个字符串是撇号

例如:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">"Hello\nWorld!"</string>
</resources>