Wie zu bewahren Zeilenumbrüche in xml <string> Ressourcen in Android?

Ich versuche, multi-line-Konstanten (definiert in .xml-Datei unter /res/values/Ordner), aber es scheint, dass es unmöglich ist, zu bewahren Linie Pausen gibt es - Sie alle werden umgewandelt in Räumen. Ich habe versucht, zu spielen mit "Format" - Attribut des strings (Einstellung beide auf "true" und "false", auch das habe ich versucht, Geschenkpapier Saiten, die in CDATA-tags, so wie hier:

<string name="str1">
A
B
C
</string>

<string name="str2" formatted="true">
A
B
C
</string>

<string name="str3" formatted="false">
A
B
C
</string>

<string name="str4"><![CDATA[
A
B
C
]]></string>

<string name="str5" formatted="true"><![CDATA[
A
B
C
]]></string>

<string name="str6" formatted="false"><![CDATA[
A
B
C
]]></string>

Alle diese string-Deklaration Varianten produzieren identische Ergebnisse - fünf-Zeichen-string "A B C" (Zeilenumbrüche ersetzt durch Leerzeichen). Gibt es eine Möglichkeit, dies zu vermeiden?

P. S. ich verstehe, dass ich kann verwenden Sie "\n" Zeilenumbrüche einfügen, aber wie auch immer resultierende string wird mit Leerzeichen anstelle der tatsächlichen Zeilenumbrüche; d.h., folgende Erklärung:

<string name="str1">
A\n
B\n
C\n
</string>

Ergebnisse in den string "A\n B\n C\n", (alle manuell eingefügten Zeilenumbruch gefolgt von nervig Raum). Gibt es Abhilfe?..

Siehe stackoverflow.com/questions/10917555/... - die Antwort ist die Verwendung eine HTML-Entität für das LF.
(...) es ist unmöglich, zu bewahren Linie Pausen gibt es - Sie alle werden umgewandelt in Räumen – Das ist nicht wahr. In allen Fällen werden die ersten sein (vor den Einen) und der Letzte (nach C) Zeilenumbruch waren deutlich entfernt.

InformationsquelleAutor Denis Avilov | 2013-09-21

Schreibe einen Kommentar