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


当前回答

这是一个老问题,但我发现当你创建一个这样的字符串时:

<string name="newline_test">My
New line test</string>

在你的应用程序中的输出将是这样的(没有换行)

My New line test

当你把字符串放在引号里

<string name="newline_test">"My
New line test"</string>

换行符将出现:

My 
New line test

其他回答

我想进一步解释这个问题。 他们的意思是这个图标:

它打开了一个“真正的编辑器窗口”,而不是大概览中的有限功能文本框。在该编辑器窗口中,允许特殊字符、换行符等,并在保存时转换为正确的xml“代码”

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

例如:

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

使用黑斜线而不是正斜线。\ 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>

您可以使用这种格式

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

虽然实际的问题是正斜杠仍然使用那些反斜杠,但仍然看到\n在他们的布局。

嗯,我也困惑为什么\n在布局中不工作,但似乎当你在实际设备中看到该布局时,它会创建一个换行符,所以不必担心它在布局显示屏上显示什么,你的换行符将在设备上工作得很好。