Android中TextView局部變色功能實現(xiàn)
在做項目的時候,遇到過一行文字有兩種顏色。在菜鳥的時候直接會想到用多個TextView來實現(xiàn)。后來自己學(xué)的多了就找到了更為簡單的方法了。
直接上代碼:
方法一:
xml代碼片段:
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
Java代碼片段:
TextView tv=(TextView)findViewById(R.id.tv); String str="默認顏色<font color='#FF0000'>紅顏色</font>"; tv.setTextSize(18); tv.setText(Html.fromHtml(str));
效果圖如下:

當(dāng)然,還可以改變兩種顏色的文字的大小。
Java代碼片段:
extView tv=(TextView)findViewById(R.id.tv); String str="默認顏色<font color='#FF0000'><small>紅顏色</small></font>"; tv.setTextSize(18); tv.setText(Html.fromHtml(str));
效果圖如下:

好的,就這樣子了。一個小功能就完成了。
方法二:
用SpannableString來實現(xiàn)。
Java代碼片段:
SpannableString spannableString = new SpannableString("默認顏色紅顏色");
spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FF0000")), 4,spannableString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
tv.setText(spannableString);
其中,”默認顏色紅顏色” 為你要改變的文本。setSpan方法有四個參數(shù),F(xiàn)oregroundColorSpan是為文本設(shè)置前景色,也就是文字顏色。如果要為文字添加背景顏色,可替換為BackgroundColorSpan。4為文本顏色改變的起始位置,
spannableString.length()為文本顏色改變的結(jié)束位置。最后一個參數(shù)為布爾型,可以傳入以下四種。
Spanned.SPAN_INCLUSIVE_EXCLUSIVE 從起始下標(biāo)到終了下標(biāo),包括起始下標(biāo)
Spanned.SPAN_INCLUSIVE_INCLUSIVE 從起始下標(biāo)到終了下標(biāo),同時包括起始下標(biāo)和終了下標(biāo)
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE 從起始下標(biāo)到終了下標(biāo),但都不包括起始下標(biāo)和終了下標(biāo)
Spanned.SPAN_EXCLUSIVE_INCLUSIVE 從起始下標(biāo)到終了下標(biāo),包括終了下標(biāo)
以上是本次我們給大家整理的關(guān)于Android中TextView局部變色功能實現(xiàn)的全部內(nèi)容,更多內(nèi)容大家可以在腳本之家里搜索你需要的文章,感謝你的支持。
相關(guān)文章
Android開發(fā)筆記之:消息循環(huán)與Looper的詳解
本篇文章是對Android中消息循環(huán)與Looper的應(yīng)用進行了詳細的分析介紹,需要的朋友參考下2013-05-05
Flutter音樂播放插件audioplayers使用步驟詳解
audioplayers是一個可以支持同時播放多個音頻文件的Flutter的插件,可以播放多個同時的音頻文件,這篇文章主要介紹了audioplayers的使用步驟,感興趣想要詳細了解可以參考下文2023-05-05
安裝android開發(fā)環(huán)境原始版(windows版)
安裝android開發(fā)環(huán)境原始版(windows版)的詳細步驟2013-03-03
Android開發(fā)在RecyclerView上面實現(xiàn)"拖放"和"滑動刪除"-2
這篇文章主要介紹了Android開發(fā)在RecyclerView上面實現(xiàn)"拖放"和"滑動刪除"(二)功能,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-03-03

