原創文章,轉載請註明出處,謝謝!android
本篇主要介紹Android開發中,經過XML資源文件來設置控件在不一樣狀態下的背景及文字顏色。關於xml改變背景及文字顏色的原理,你們能夠去看一下郭霖大神的源碼分析文章,源碼分析
傳送門:Android視圖狀態及重繪流程分析,帶你一步步深刻了解View(三)spa
這部份內容不難理解,可是很容易忘記,而且網上相關的文章都比較零散,沒有進行彙總。因此纔有了我寫這篇博客的初衷,給本身做一個詳細總結,也給新手開發者一點幫助,老鳥.net
飄過。設計
1、經過xml文件給控件設置邊框,圓角,漸變色3d
做爲Android開發者,咱們不少時候作開發並無美工的支持,這時候咱們須要設計一些相對比較漂亮的界面效果,就須要藉助於android爲咱們提供的原始設計界面的方式,經過xml。xml
如下分別是不一樣狀況下的設計方式和基本原理,請注意詳細的代碼註釋。blog
1.設置邊框,見下圖:圖片
2.設置單邊和不一樣顏色的多邊框:資源
3.設置圓角:
4.設置漸變色:
2、給控件設置在不一樣狀態下的背景色或背景圖片
1.設置不一樣狀態背景色
未點擊 點擊下
2.不一樣狀態下的背景圖片:
未點擊 點擊
3.不一樣狀態背景與邊框,圓角等相結合
三.不一樣狀態下的文字顏色
給文字定義在不一樣狀態下的顏色時,一樣是使用selector這個TAG,可是與背景顏色定義不一樣的是:
文字顏色在selector使用的是color屬性,而背景顏色使用的是drawable屬性。
例如:
!!!注意:定義文字顏色的selector文件能夠放在drawable文件夾下,引用時使用@drawable/selector.xml
能夠在res下新建一個color文件夾,專門存放文字顏色的selector文件(我的強烈推薦此種方式,容易區分文字顏色和背景),
此時引用時要使用@color/selector.xml
見下圖:
好了,到此爲止,基本上把Android中經過xml來改變控件背景色和文本顏色的相關知識說完了。相信讀者看了這篇文章,應改對
xml定義顏色有了一個很是清晰的認識。
因爲做者水平所限,若是有任何問題,歡迎隨時交流。