Comment préserver les sauts de ligne dans xml & lt; string & gt; ressources sur Android?
Je suis en train d'utiliser plusieurs lignes constantes (défini .fichier xml sous /res/values/dossier), mais il semble qu'il est impossible de conserver les sauts de ligne - ils tous être convertis en espaces. J'ai essayé de jouer avec "formatés" attribut de chaînes de caractères (paramètre à la fois pour les "vrai" et "faux", aussi j'ai essayé d'habillage des chaînes dans CDATA balises, comme ceci:
<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>
Tous ces chaîne de déclaration des variantes de produire des résultats identiques - chaîne de cinq caractères "A B C" (les sauts de ligne remplacés par un seul espace). Est-il un moyen pour éviter cela?
P. S. je comprends que je peux utiliser "\n" pour insérer des sauts de ligne, mais de toute façon résultant chaîne contient des espaces à la place de réelles des sauts de lignes; c'est à dire, la déclaration suivante:
<string name="str1">
A\n
B\n
C\n
</string>
résultats en chaîne "\n B\C n\n" (chaque inséré un saut de ligne suivie par ennuyeux de l'espace). Est-il une solution de contournement?..
source d'informationauteur Denis Avilov | 2013-09-21
Vous devez vous connecter pour publier un commentaire.
Dans le cas où les gens commencent à avoir des problèmes avec cela, l'insertion
\n
à la fin de la chaîne XML causes de l'indentation. Par exemple:Apparaît comme
Au lieu de cela, vous devez insérer
\n
au DÉBUT de chaînes de caractères XMLCe sera la cause de nouvelles lignes à afficher correctement.
Utiliser une autre barre oblique inverse à la fin de chaque ligne:
De cette façon, vous pouvez insérer des sauts de ligne à l'aide de la "\n" et vous échapper à l'extrémité de la ligne dans le fichier de ressources de sorte qu'il n'est pas converti à l'espace.
Toujours aussi moche, mais ça fonctionne.
Pour ajouter une nouvelle ligne à partir de XML, vous devez ajouter "\n".
C'est comment vous le faites.
Espère que cette aide
Utiliser html pauses comme ceci:
Mes deux cents.
J'ai résolu à l'aide de tableaux de chaîne, le chargement de la ressource, puis concaténer les éléments du tableau.
Je trouve aussi sympa d'avoir chaque long de la chaîne de caractères dans un fichier séparé.