在TextView中添加文本時有時需要改變一些文本字型的顏色,今天學到了三種方法,拿出來分享一下:
1.在layout檔案下的配置xml檔案中直接設定字型顏色,通過添加android:textcolor=“#FFFFFF”來變化顏色
但這樣的效果只能讓字型千篇一律的顯示一種顏色
2.在activity中通過TextView tv=new TextView(this);執行個體化一個textview,通過setContentView(tv);將其載入到當前activity,設定要顯示的內容String str=“想要顯示的內容”;通過以下代碼可以實現部分文本字型的改變,參數中的數字表示起始位置和結束位置,此種方法比較複雜
SpannableStringBuilder style=new SpannableStringBuilder(str);
//SpannableStringBuilder實現CharSequence介面
style.setSpan(new ForegroundColorSpan(Color.RED), 0, 2,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE );
style.setSpan(new ForegroundColorSpan(Color.YELLOW), 2, 4,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE );
style.setSpan(new ForegroundColorSpan(Color.GREEN), 4, 6,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE );
tv.setText(style);//將其添加到tv中
3.通過html標籤改變文本顏色
tv.setText(Html.fromHtml("我是<font color=blue>danyijiangnan</font>"));
通過Html.fromHtml()方法就可以在字串中使用html的標籤,通過font標籤可以改變字型的格式