在android中以编程方式将颜色设置为字符串?

时间:2013-12-17 06:57:37

标签: android performance android-layout listview

我有多个字符串要加载到listview我需要将文本颜色设置为字符串

我谷歌很多,但我只有

textView.setTextColor(getResources().getColor(R.color.red));

我不使用textview i juz将字符串直接加载到listview

有人建议做以下

String s="Hello World";
SpannableString ss=  new SpannableString(s);                
ss.setSpan(new ForegroundColorSpan(Color.GREEN), 0, 5, 0);  

但它不适合我

预先提出任何有关Thanx的建议

3 个答案:

答案 0 :(得分:1)

以下代码将TextView中的文字设置为"Hello World",其中"Hello"为红色,"World"为绿色。

TextView myTextView = new TextView(this);
SpannableString myStr1 = new SpannableString("Hello");
SpannableString myStr2 = new SpannableString("World");
myStr1.setSpan( new ForegroundColorSpan(Color.RED), 0, myStr1.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE );
myStr2.setSpan( new ForegroundColorSpan(Color.GREEN), 0, myStr2.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE );
myTextView.setText(TextUtils.concat(myStr1, " ", myStr2);

答案 1 :(得分:1)

StringBuilder sb = new StringBuilder();
sb.append(" <font color='red'>");
sb.append("Hello World");
sb.append("</font>");
textView.setText(Html.fromHtml(sb.toString()));

我希望这会对你有所帮助。

答案 2 :(得分:0)

如果您想更改textview文字的颜色,请按照这样使用

     textView.setTextColor(Color.parseColor("#123123")); // give your own text color here

它会起作用。