我們知道button的背景是可以使用selector的,實際上文字也是支援這一特性的,我在前一段時間進行過初步嘗試,但是沒有成功,於是就放棄了。這兩天又有了這個需求,一開始我的想法是重寫一個組件,但是為了一個或兩個按鈕單獨寫一個組件不太划算,於是就重新試了我之前的想法,成功了。在這裡裡分享一下:
首先需要定義我們的顏色:
[html]
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="white">#ffffffff</color>
<color name="non">#ff000000</color>
<color name="grey">#ff505050</color>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="white">#ffffffff</color>
<color name="non">#ff000000</color>
<color name="grey">#ff505050</color>
</resources>其次寫我們需要的selector:[html] view plaincopyprint?<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="true" android:color="@color/white"/>
<item android:state_focused="true" android:color="@color/white"/>
<item android:color="@color/non"/> www.2cto.com
</selector>
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="true" android:color="@color/white"/>
<item android:state_focused="true" android:color="@color/white"/>
<item android:color="@color/non"/>
</selector>
最後在需要的地方使用:android:textColor="@drawable/text"
完成。
作者:agods