2011-03-28 27 views
115

似乎不可能將新行「/ n」添加到XML資源字符串中。有沒有另外一種方法呢?字符串資源新行/ n不可能?

謝謝

+9

你的意思是\ n?你有一個例子嗎? – Keith 2011-03-28 14:16:59

+2

標記您的答案或添加評論,如果它不工作! – binnyb 2011-03-28 15:24:20

+1

它應該是\ n。爲我工作 – akash89 2015-05-20 09:24:40

回答

273

使用黑色斜線而不是正斜槓。 「\ 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> 
+16

for html'<![CDATA [html_here]]>'也是一個不錯的選擇。 – bigstones 2011-03-28 14:40:18

+1

是的,那會更好一些 – binnyb 2011-03-28 14:46:25

+2

在strings.xml中只接受HTML格式,所以< br/>是合適的解決方案 – akash89 2015-10-06 07:21:43

39

我知道這是很老的問題,但它我搜索時排在了榜單上。所以我想用另一種方法更新。

在strings.xml檔案,你可以做\ n或您可以簡單地按ENTER鍵:

<string name="Your string name" > This is your string. 

    This is the second line of your string.\n\n Third line of your string.</string> 

這將導致您的TextView如下:

這是你的字符串。

這是你的字符串的第二行。

字符串的第三行。

這是因爲在字符串的開始聲明和新行之間有兩個返回值。爲了清晰起見,我還添加了\ n,因爲任何一種都可以使用。我喜歡在xml中使用回車來查看列表或任何多行字符串。我的兩分錢。

+3

哦,這很有趣。感謝分享。另外,我覺得這個問題很白癡,但它看起來幫助了很多人。大聲笑!! – 2013-12-12 17:29:49

+4

這對我不起作用 – Sam 2015-07-21 09:47:35

+4

就像在Android Studio上簡單地按下輸入不起作用.. – Yeung 2015-11-04 07:40:38

1

如果你把「\ n」在XML文件中的字符串,它作爲「\\ n」個

所以,我所做的:

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

然後我得到一個行跳躍在屏幕上

+2

只有在嚮導中添加字符串時纔會發生。如果你編輯它的作品xml – 2016-07-20 18:57:58

+0

我也犯了這個錯誤。謝謝你的建議。但我只是糾正了\ n自己的所有表現。 – Kanat 2016-12-06 11:37:53

+0

不是一個好的解決方案。您應該從資源中獲取文本並直接使用它。如果你必須處理更多的特殊字符會怎麼樣?你會爲他們寫更多的代碼嗎?如果你有邊緣案例呢? – definera 2017-07-04 09:43:48

0

很簡單,你只是把
\ n在任何你想打破線在你的字符串資源 。

例如

String s = my string resource have \n line break here;

2

這是一個老問題,但我發現,當你創建一個這樣的字符串:

<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 

希望這有助於有人!

+1

適用於我,但爲了以防萬一,請記住,當您定義上述資源時,應避免使用'Html.fromHtml'。謝謝 – 2018-02-06 21:51:03

0

在Android Studio中使用翻譯編輯器時,只需單擊右側的圖標(或使用Shift-Enter),然後使用返回來添加換行符。 這將在本地化的strings.xml中正確插入\ n。