2011-08-19 5 views
0

Je veux coder fini format de chaîne, j'ai unformat de chaîne et saut de ligne

String s="19831014"+"linknum"+i+"cool"; 

Je veux ce s ont un lien de format ceci:

s=<red>19831014</red>+"//n" //line break 
    +<green>"linknum"</green> +i+"cool" 

Pouvez-vous aider?

+5

I n'obtiens pas ce que tu veux. De plus, un saut de ligne est archivé en utilisant '\ n' et non' // n'. –

+0

pouvez-vous me dire comment ajouter de la couleur à la chaîne? – pengwang

+0

Les chaînes n'ont pas de couleurs. Cependant, vous pouvez utiliser quelque chose comme HTML et un analyseur approprié pour ajouter des informations de couleur. Mais les cordes elles-mêmes n'ont pas de couleurs. –

Répondre

3

String n'a pas de couleur mais la chose qui affiche un String a.

Mais vous pouvez convertir votre objet String-SpannableString qui permet à l'utilisateur d'ajouter des effets tels que gras, italique, Souligné, portions de texte de couleur, etc.

si vous souhaitez afficher chaîne avec des couleurs différentes, vous devez utiliser ForegroundColorSpan

Par exemple:

SpannableString colouredString =new SpannableString("Red, Green, Blue."); 

colouredString.setSpan(new ForegroundColorSpan(0xFFFF0000), 0, 4, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
colouredString.setSpan(new ForegroundColorSpan(0xFF00FF00), 5, 11, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
colouredString.setSpan(new ForegroundColorSpan(0xFF0000FF), 12, colouredString.length() - 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 

pour changer la couleur d'arrière-plan, vous devez utiliser BackgroundColorSpan:

Par exemple:

coloredString.setSpan(new BackgroundColorSpan(0xFFFFFF00), 8, 19, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 

maintenant vous pouvez utiliser cette colouredString pour montrer dans EditText et TextView

Pour donner des styles différents, vous pouvez utiliser StyleSpan

Exemple de référence: http://developer.android.com/resources/faq/commontasks.html#selectingtext

6
String s="19831014\n"+"linknum"+i+"cool"; 

"\ n" est un saut de ligne.

+0

pouvez-vous me dire comment ajouter de la couleur? – pengwang

+2

une chaîne n'a pas de couleur. un textview fait. Voir http://developer.android.com/reference/android/widget/TextView.html#attr_android:textColor – njzk2

+1

Les chaînes n'ont pas de couleur. Les choses qui affichent les chaînes font. –