テキストビューで表示される文字列の一部を赤く、一部を黒くしたいのですが、どうすればよいですか?
XMLファイルで簡単に言及する方法はありますか? (strings.xml)
スパンが使えると思います。テキストスタイル
例えば、
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>
textColor 属性のレイアウト xml で使用します。
android:textColor="@color/redColor"
あなたはこれを試すことができます、
String.replaceAll(textToHighlight,<font color="red">textToHighlight</font>);
Textview.setText(Html.fromHtml(String));
それを行う唯一の方法は、以下のようにスパン型を使用することだと思います。
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);
お役に立てれば