1. 程式人生 > >android設定控制元件的字型和背景(通過資源引用)筆記

android設定控制元件的字型和背景(通過資源引用)筆記

所有View的子類都具有的一個方法,設定背景顏色:

int resid = getResources().getColor(R.color.background_green_low)

setBackgroundColor(int resid);

--------------------------------------------------------------------------------------------------------------------------------------

設定TextView的字型顏色:

int resid = getResources().getColor(R.color.background_green_image);

setTextColor(int resid);

(1)直接傳color值:

     setTextColor(Color.red);

      setTextColor(Color.parseColor("#FFFFFF"));

     或ARGB值 setTextColor(Color.rgb(255, 255, 255));

(2)通過資源引用:setTextColor(getResources().getColor(R.color.background_green_image));

(3)通過資原始檔寫在String.xml中:

ColorStateListcsl = (ColorStateList )getResources().getColorStateList(R.color.my_color);

setTextColor(csl);

 

(4)通過xml檔案,如/res/text_color.xml 獲取資源資訊:

XmlPullParser xrp = getResources().getXml(R.color.text_color); 

ColorStateList csl = ColorStateList.createFromXml(getResources(), xrp);  

setTextColor(csl);

 

(5)另一個過載的方法:setTextColor(ColorStateList colors);

ColorStateListcsl = (ColorStateList )getResources().getColorStateList(R.color.my_color);

setTextColor(csl);

--------------------------------------------------------------------------------------------------------------------------------------

設定ImageButton的字型顏色:

int resid = getResources().getColor(R.color.background_green_image);

setTextColor(int resid);

------- 這裡的 resid  不是R檔案中自動分配的int值,所以要注意,這是Color類中的靜態方法構造出來的顏色int值。

--------------------------------------------------------------------------------------------------------------------------------------

設定ImageButton的背景圖片:

Drawable dr= getResources().getDrawable(R.drawable.btn_head_back2);

setImageDrawable(Drawabledr);

setBackgroundDrawable(Drawable dr) 的引數為Drawable物件。

setBackgroundColor(Color color)   的引數為Color物件,比如說Color.Red為紅色,或Color.rgb(255,0,0)來制定一個紅色。

setBackgroundResource(int id)  的引數為資源ID,比如說R.drawable.icon