一.代碼中設置控件背景顏色,以TextView爲例:
html
TextView tText=(TextView) findViewById(R.id.textv_name); //第1種: tText.setTextColor(android.graphics.Color.RED);//系統自帶的顏色類 // 第2種: tText.setTextColor(0xffff00ff); /** * 0xffff00ff是int類型的數據,分組一下0x|ff|ff00ff,0x是表明顏色整數的標記,ff是表示透明度,ff00ff表示顏色 * 注意:這裏ffff00ff必須是8個的顏色表示,不接受ff00ff這種6個的顏色表示。 **/ //第3種: tText.setTextColor(android.graphics.Color.parseColor("#87CEFA")) ; //仍是利用Color類; //第4種: tText.setTextColor(this.getResources().getColor(R.color.red)); /** * 經過得到資源文件進行設置。根據不一樣的狀況R.color.red也能夠是R.string.red或者R.drawable.red, * 固然前提是須要在相應的配置文件裏作相應的配置,如(xml 標籤): * * <color name="red">#FF0000</color> * <drawable name="red">#FF0000</drawable> * <string name="red">#FF0000</string> **/
二.注意java
代碼中給控件設置背景顏色時,以下寫法沒法達到預期目標android
tv.setTextColor(R.color.textColor_black);
正確寫法是要從resources中獲取 字體
tv.setTextColor(this.getResources().getColor(R.color.textColor_black));
顏色設置必須經過Color類來操做 否則設置無效 ui
三.安卓系統字體顏色代碼and修改字體顏色
this
一、在layout文件下的配置xml文件中直接設置字體顏色,spa
經過添加 android:textcolor=「#FFFFFF」來變化顏色 但這樣的效果只能讓字體千篇一概的顯示一種顏色。 code
二、在activity中經過TextView tv=new TextView(this);xml
實例化一個textview,經過 setContentView(tv);將其加載到當前activity,設置要顯示的內容String str=「想要顯示的內容」;htm
經過如下代碼能夠實現部分文本字體的改變,參數中的數字表示起始位置和結束位置,此種方法比較複雜。
代碼以下:
SpannableStringBuilder style=new SpannableStringBuilder(str); //SpannableStringBuilder實現CharSequence接口 style.setSpan(newForegroundColorSpan(Color.RED),0,2,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE ); style.setSpan(newForegroundColorSpan(Color.YELLOW),2,4,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE ); style.setSpan(newForegroundColorSpan(Color.GREEN),4,6,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE ); tv.setText(style);//將其添加到tv中
三、經過html標籤改變文本顏色
tv.setText(Html.fromHtml("我是<font color=blue>danyijiangnan</font>"));