我們在應用中經常看到一些選擇開關狀態的配置文件,做項目的時候用的是android的Switch控件,但是感覺好丑的樣子子
個人認為還是自定義的比較好,先上個效果圖:

實現過程:
1.準備開關不同狀態的兩張圖片放入drawable中。
2.xml文件中添加代碼:
<ToggleButtonandroid:id="@+id/switch1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:background="@android:color/transparent"android:button="@drawable/btn_backgrounds"android:checked="false"android:textOff=""android:textOn="" /> android:button="@drawable/btn_backgrounds"是自己定義的android selector文件: <selectorxmlns:android="http://schemas.android.com/apk/res/android"><item android:state_checked="true" android:drawable="@drawable/toggle_btn_on" /><item android:drawable="@drawable/toggle_btn_off" />
3,之后在java文件中聲明ToggleButton控件并且實例化,添加點擊事件:
/*** 自己出創建的內部類,監聽按鈕點擊事件* * @author cyf* */class MyOnCheckedChangeListener implements OnCheckedChangeListener {@Overridepublic void onCheckedChanged(CompoundButton arg0, boolean arg1) {if (arg1) {// 開} else {// 關 }}} 4.添加監聽:
switch1.setOnCheckedChangeListener((OnCheckedChangeListener) new MyOnCheckedChangeListener());
新聞熱點
疑難解答