Android—自定義開關按鈕實現


我們在應用中經常看到一些選擇開關狀態的配置文件,做項目的時候用的是android的Switch控件,但是感覺好丑的樣子…………

個人認為還是自定義的比較好,先上個效果圖:

實現過程:

1.准備開關不同狀態的兩張圖片放入drawable中。

2.xml文件中添加代碼:

    <ToggleButton
        android: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文件:
<selector
  xmlns: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 { @Override public void onCheckedChanged(CompoundButton arg0, boolean arg1) { 
            if (arg1) {  // } else { //     } } }

4.添加監聽:

switch1.setOnCheckedChangeListener((OnCheckedChangeListener) new MyOnCheckedChangeListener());

筆記備忘一下,這個沒有Switch的滑動效果~~~

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM