1.
首先建立 Selector(customize_checkbox_selector.xml),以套用到checkbox上
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/press" android:state_checked="true" android:state_focused="true"/> <item android:drawable="@drawable/press" android:state_checked="false" android:state_focused="true"/> <item android:drawable="@drawable/press" android:state_checked="true"/> <item android:drawable="@drawable/normal" android:state_checked="false"/> </selector>
注意:
press的圖片就是點擊checkbox顯示的圖片, normal的圖片就是未點擊checkbox的圖片
把customize_checkbox_selector.xml放到res/drawable/中
2.
建立Style, 和 Button 不同,checkbox必須另外建立一個style,並在style中引入第一步驟建立的Selector, 最後才在checkbox的xml中套用style
<style name="customize_checkbox_style" parent="@android:style/Widget.CompoundButton.CheckBox"> <item name="android:button">@drawable/customize_checkbox_selector</item> </style>
3.
在checkbox xml中套用
<CheckBox android:id="@+id/test_checkbox" style="@style/customize_checkbox_style" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/customize_bg" android:text="@string/teststring"> </CheckBox>
注意: 若checkbox的文字已經有設定了但在畫面上還是看不出來,請小心checkbox的字體顏色是否和背景顏色相同