2011-06-08 12 views
17

'123' ancak 1 kırmızı renk 2'yi yeşil ve 3'ü siyah olarak görüntülemek istiyorum ... Bu mümkün mü yoksa aynı metin görünümünde farklı metin rengi görüntülemenin başka bir yolu var mı ...Metin görünümünde farklı renklerde harfler var mı?

+0

Kodum yok ama d Bir html metni kullanarak – ingsaurabh

+0

neden bu ?? linelaylayışı ve şişirilmiş bir metin girişi yapın, istediğiniz gibi çok sayıda metin vardır: D – PedroAGSantos

cevap

2

Ah ben bunu sizin için daha iyi html yazabilecek birine danışmak yüzden web bilmiyorum

myTextView.setText(Html.fromHtml(html text having 1 in red 2 in green and so on)); 

kodunun altına kullanmak bulundu html gibi renkler bu gibi :)

TextView TV = (TextView)findViewById(R.id.mytextview01); 

    Spannable WordtoSpan = new SpannableString("Your message");   

WordtoSpan.setSpan(new ForegroundColorSpan(Color.BLUE), 0, WordtoSpan .length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 

TV.setText(WordtoSpan); 
+0

tnx, burada daha fazla kopya var String styledText = " asd"; cache.timeView.setText (Html.fromHtml (styledText)); – Lukap

+2

html kullanmanın doğru yol olduğunu düşünmüyorum. – Kaj

+1

Neden html doğru yol değil @Kaj? – Alesqui

60

Evet, SpannableString kullanıyorsanız, metnin farklı yerlerinde farklı renkler olabilir. Örnek:

SpannableString text = new SpannableString("Lorem ipsum dolor sit amet"); 
// make "Lorem" (characters 0 to 5) red 
text.setSpan(new ForegroundColorSpan(Color.RED), 0, 5, 0); 
textView.setText(text, BufferType.SPANNABLE); 

daha eksiksiz bir örnek here var. P

+1

Yanıtınız doğru olanı olarak işaretlenmelidir (doğru işaretli olanı değil, ama bunu doğru yaklaşım olarak görüyorum). – Leeeeeeelo