改變checkbox默認的文字與選框之間的距離兩種方案,剛剛開始接觸checkbox 的時候因爲不熟悉控件,使用了組合控件:一個未設定text的CheckBox和一個TextView來達到目的。後來發現只須要設定CheckBox的android:paddinLeft的值便可,沒有看源碼,不清楚問什麼CheckBox的這個屬性表明的意義爲何和其餘widget不同,問題是解決了。 android
在開發過程當中常常遇到的問題是,不一樣廠商的checkbox控件的UI不一樣,致使開發出的產品在UI上有些區別,尤爲是一些廠商的UI作得比較醜,這時候咱們能夠使用自定義Checkbox來達到咱們想要的UI。 測試
只須要在drawable文件下設定一個xml便可: spa
<?xml version="1.0" encoding="UTF-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_window_focused="false" android:state_enabled="true" android:state_checked="true" android:drawable="@drawable/btn_check_on" />
<item android:state_window_focused="false" android:state_enabled="true" android:state_checked="false" android:drawable="@drawable/btn_check_off" />
<item android:state_enabled="true" android:state_checked="true" android:state_pressed="true" android:drawable="@drawable/btn_check_on_pressed" />
<item android:state_enabled="true" android:state_checked="false" android:state_pressed="true" android:drawable="@drawable/btn_check_off_pressed" />
<item android:state_focused="true" android:state_enabled="true" android:state_checked="true" android:drawable="@drawable/btn_check_on_selected" />
<item android:state_focused="true" android:state_enabled="true" android:state_checked="false" android:drawable="@drawable/btn_check_off_selected" />
<item android:state_enabled="true" android:state_checked="false" android:drawable="@drawable/btn_check_off" />
<item android:state_enabled="true" android:state_checked="true" android:drawable="@drawable/btn_check_on" />
</selector>
在須要使用的CheckBox控件下使用android:button屬性: xml
<CheckBox
android:id="@+id/btn_check"
android:button="@drawable/checkboxselector"
android:layout_width="wrap_content"
android:text="測試一下"
android:paddingLeft="30.0dp"
android:layout_height="wrap_content" /> 開發