首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Android TextView 部份文字變色:使用 SpannableString 設置 ForegroundColorSpan

     編輯:程式設計綜合問答

建立 SpannableString,對指定字元範圍套用 ForegroundColorSpan,再設定給 TextView,實現部分文字變色。

程式碼

String fullText = "I know just how to whisper";
SpannableString spannable = new SpannableString(fullText);
// 從索引 5 到 13 (不含) 設為藍色:"just how"
spannable.setSpan(new ForegroundColorSpan(Color.BLUE), 5, 13, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(spannable);

參數說明

  • start、end:字元索引範圍(0 起算,end 不包含)。
  • flags:SPAN_EXCLUSIVE_EXCLUSIVE 表示插入文字時不擴展範圍。

其他常用 Span

  • BackgroundColorSpan:背景色。
  • StyleSpan:粗體/斜體。
  • UnderlineSpan:底線。
  • ClickableSpan:可點擊區域。
  • ImageSpan:插入圖片。

動態範圍

若關鍵字位置不固定,可用 fullText.indexOf(keyword) 計算 start/end。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved