2012-05-01 4 views
20

In una visualizzazione di testo sto cercando di separare gli stili di testo su parole diverse.Utilizzo di più colori di testo nella vista testo di Android [Html.fromhtml()]

Finora ho:

textview.setText(Html.fromHtml("<i><small><font color=\"c5c5c5\">" + "Competitor ID: " + "</font></small></i>" + "<font color=\"47a842\">" + compID + "</font>")); 

Fondamentalmente, io sto dicendo che voglio "Competitor ID:" di essere corsivo, piccolo, e grigio.

E voglio che la stringa compID sia di dimensioni normali, non in corsivo e verde.

Le porzioni in corsivo e piccole del codice funzionano perfettamente, ma per qualche motivo, l'intera visualizzazione del testo ha un testo grigio, anziché solo "Competitor ID:".

Qualche idea?

+0

Dai un'occhiata all'esempio di lavoro http://javatechig.com/2013/04/07/how-to-display-html-in-android-view/ –

risposta

72
textview.setText(Html.fromHtml("<i><small><font color=\"#c5c5c5\">" + "Competitor ID: " + "</font></small></i>" + "<font color=\"#47a842\">" + compID + "</font>")); 

Prova come sopra.

+1

Questo ha fatto il trucco! – user1029167

+0

Felice di aiutare. =) –

+0

@userIsAMonkey +1 ottimo lavoro, ma perché stai usando le sequenze di escape in ** colore del carattere ** se è in html –

-7

Provare a utilizzare uno di questi valori di codice esadecimale grigio invece.

gray1 #030303 
gray2 #050505 
gray3 #080808  
gray4 #0A0A0A 
gray5 #0D0D0D 

. Prova anche a controllare il colore del testo all'interno delle proprietà textview xml usando i codici sopra. Spero che questo aiuti