安卓textview編輯部分字型顏色
阿新 • • 發佈:2019-01-08
String sr = "你參加的<font color='#FF0000'><small>" + comName + "</small></font>約賽已經退款成功,金額<font color='#FF0000'><small>" + price + "</small></font>元,訂單號<font color='#FF0000'><small>" + number + "</small></font>"; mViewHolder.t11.setText(Html.fromHtml(sr));
方法二:
用SpannableString來實現。
Java程式碼片段:
SpannableString spannableString = new SpannableString("預設顏色紅顏色");
spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FF0000")), 4,spannableString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
tv.setText(spannableString);
- 1
- 2
- 3
- 1
- 2
- 3
其中,”預設顏色紅顏色” 為你要改變的文字。setSpan方法有四個引數,ForegroundColorSpan是為文字設定前景色,也就是文字顏色。如果要為文字新增背景顏色,可替換為BackgroundColorSpan。4為文字顏色改變的起始位置,spannableString.length()為文字顏色改變的結束位置。最後一個引數為布林型,可以傳入以下四種。
Spanned.SPAN_INCLUSIVE_EXCLUSIVE 從起始下標到終了下標,包括起始下標
Spanned.SPAN_INCLUSIVE_INCLUSIVE 從起始下標到終了下標,同時包括起始下標和終了下標
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE 從起始下標到終了下標,但都不包括起始下標和終了下標
Spanned.SPAN_EXCLUSIVE_INCLUSIVE 從起始下標到終了下標,包括終了下標