Quand je définis un TextView
in xml
, comment puis-je y ajouter une nouvelle ligne? \n
semble ne pas fonctionner.
<TextView
android:id="@+id/txtTitlevalue"
android:text="Line1: \n-Line2\n-Line3"
android:layout_width="54dip"
android:layout_height="fill_parent"
android:textSize="11px" />
Réponses:
Ne faites pas confiance à l'éditeur visuel. Votre code fonctionne dans l'émeu.
la source
Essayer:
android:lines="2"
\n
devrait marcher.la source
essayer
System.getProperty("line.separator");
la source
Je pense que cela a quelque chose à voir avec votre
HTM.fromHtml(subTitle)
appel: un "\ n" ne signifie pas des bupkis en HTML. Essayez<br/>
au lieu de "\ n".la source
Tout d'abord, mettez ceci dans votre affichage de texte:
Utilisez ensuite
\n
dans le texte de votre affichage de texte.maxLines fait que le TextView soit au plus grand de ces lignes. Vous pouvez choisir un autre numéro :)
la source
J'ai essayé tout ce qui précède, j'ai fait mes propres recherches, ce qui a abouti à la solution suivante pour le rendu des caractères d'échappement de saut de ligne:
En utilisant la méthode replace, vous devez filtrer les sauts de ligne échappés (par exemple
'\\\n'
)Ce n'est qu'alors que chaque instance de
'\n'
caractères d'échappement de saut de ligne est rendue dans le saut de ligne réelPour cet exemple, j'ai utilisé une base de données Google Apps Scripting noSQL (ScriptDb) avec des données formatées JSON.
Vive: D
la source
Je pense que cela fonctionnera.
la source
Mes 2 cents, en utilisant Android TV.
Ajoutez
\n
des chaînes XML en lisant:la source
Je viens de résoudre le même problème, je place les attributs ci-dessous en xml
travail.
Html.fromHtml("text1 <br> text2").toString()
fonctionnent également.la source
Assurez-vous que votre
\n
est"\n"
prêt à fonctionner.la source
Cela a résolu mon problème.
la source
System.getProperty("line.separator");
ce travail pour moi.la source
Une façon de le faire est d'utiliser des
Html
balises ::la source
Si vous déboguez, vous verrez que la chaîne est en fait
"\ \r\ \n"
ou"\ \n"
, c'est-à-dire qu'elle est échappée. Donc, si vous massez cette corde, pour vous débarrasser de l'excédent\
, vous aurez votre solution. Cela est particulièrement vrai si vous lisez à partir d'une base de données.la source
Vous devez mettre le
"\n"
dans lestrings.xml
fichier et non dans la mise en page.la source
Besoin de garder
1.
android:maxLines="no of lines"
2.Et utiliser
\n
pour obtenir les prochaines lignesla source
Pour moi, la solution était d'ajouter la ligne suivante à la mise en page:
Et \ n apparaît comme une nouvelle ligne dans l'éditeur visuel. J'espère que ça aide!
la source
tools:text
pasandroid:text
, mais de toute façon désolé de déranger :)android:text
Je pense que c'est juste un bug de l'éditeur visuel, comme le suggère la réponse acceptée, mais il est plus confortable de pouvoir le voir :)Vous pouvez également ajouter
<br>
au lieu de\n.
Et puis vous pouvez ajouter du texte à TexView:
la source
android:text
ne peut pas contenir de caractères <ou>.Vous devez mettre
\n
le fichierstring.xml
la source
Cela fonctionnera.
la source
Essayez simplement:
Dans un fichier Java.
la source
La réponse de RuDrA05 est bonne, lorsque je modifie le XML sur Eclipse, cela ne fonctionne pas, mais lorsque je modifie le XML avec notepad ++, cela fonctionne.
La même chose se produit si je lis un fichier txt enregistré avec eclipse ou notepad ++
Peut-être est lié à l'encodage.
la source
Cela fonctionne bien. Vérifiez-le pour votre application.
la source
Note latérale: mise en majuscule du texte à l'aide
android:inputType="textCapCharacters"
ou similaire semble empêcher le
\n
de fonctionner.la source
Assurez-vous que vous utilisez
your_package.R
et nonandroid.R
la source
Essaye ça:
la source
pour la nouvelle ligne dans TextView, ajoutez simplement \ n au milieu de votre texte, cela fonctionne.
la source
Si le TextView est dans n'importe quelle mise en page (LinearLayout par exemple), essayez de changer l'attribut d'orientation en vertical comme
android:orientation="vertical"
pour la mise en page ou modifiez l'TextView
attributandroid:singleLine="true"
pour créer une nouvelle ligne après.la source
Par programmation: myTV.setText ("Mon texte" + "\ n" + maChaîne);
la source
Créez une chaîne dans votre stings.xml
Ensuite, dans votre code, référencez la chaîne
la source