0

我想让一些由文本视图显示的字符串是红色的,还有一些是黑色的,我该怎么做?

有没有办法简单地在 XML 文件中提及它?(字符串.xml)

4

3 回答 3

2

我认为您可以使用跨度。文字样式

例如,

   final SpannableStringBuilder sb = new SpannableStringBuilder(" text must be here ");
   final ForegroundColorSpan fc1 = new ForegroundColorSpan(Color.rgb(255, 0, 0)); 
   final ForegroundColorSpan fc2 = new ForegroundColorSpan(Color.rgb(255, 255, 255)); 
   sb.setSpan(fc1 , 0, 4, Spannable.SPAN_INCLUSIVE_INCLUSIVE); 
   sb.setSpan(fc2, 5, 8, Spannable.SPAN_INCLUSIVE_INCLUSIVE); 
   yourTextView.setText(sb);

(或者)

在样式 XML 中,声明颜色值,如下所示

<color name="redColor">#ff0000</color>

并在布局 xml 中使用它,作为 textColor 属性,

android:textColor="@color/redColor"
于 2012-12-13T14:17:58.487 回答
1

你可以试试这个

String.replaceAll(textToHighlight,<font color="red">textToHighlight</font>);

Textview.setText(Html.fromHtml(String));
于 2012-12-13T14:14:14.887 回答
0

我相信这样做的唯一方法是使用如下跨越的类型。

TextView textview = (TextView)findViewById(R.id.myTextview);
String firstName = "FirstName";
String lastName = "LastName";
Spanned details = Html.fromHtml(firstName + "<br />" + "<small><font color=\"#767676\">" + lastName + "</b></small>");
textview.setText(details);

希望这可以帮助

于 2012-12-13T14:25:47.163 回答