创建自定义平面开关 android
Create custom flat switch android
我想制作一个自定义开关,如下图所示。
我创建了两个可绘制资源,一个是 switch_bg,另一个是 tracker_bg。
switch_bg.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/thumb_on" android:state_pressed="true" />
<item android:drawable="@drawable/thumb_off" android:state_enabled="false" />
<item android:drawable="@drawable/thumb_on" android:state_checked="true" />
<item android:drawable="@drawable/thumb_off" />
</selector>
tracker_bg.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_tracker" android:state_enabled="false" />
<item android:drawable="@drawable/ic_tracker" android:state_pressed="true" />
<item android:drawable="@drawable/ic_tracker" android:state_checked="true" />
<item android:drawable="@drawable/ic_tracker" />
</selector>
在主 xml 中,我输入了以下代码。
<Switch
android:id="@+id/switch1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:layout_marginRight="20dp"
android:thumb="@drawable/switch_bg"
android:track="@drawable/track_bg"/>
请指导我我做错了什么或者我这边缺少什么。
试试这个示例,它可能对您有所帮助。Click here
我想制作一个自定义开关,如下图所示。
我创建了两个可绘制资源,一个是 switch_bg,另一个是 tracker_bg。
switch_bg.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/thumb_on" android:state_pressed="true" />
<item android:drawable="@drawable/thumb_off" android:state_enabled="false" />
<item android:drawable="@drawable/thumb_on" android:state_checked="true" />
<item android:drawable="@drawable/thumb_off" />
</selector>
tracker_bg.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_tracker" android:state_enabled="false" />
<item android:drawable="@drawable/ic_tracker" android:state_pressed="true" />
<item android:drawable="@drawable/ic_tracker" android:state_checked="true" />
<item android:drawable="@drawable/ic_tracker" />
</selector>
在主 xml 中,我输入了以下代码。
<Switch
android:id="@+id/switch1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:layout_marginRight="20dp"
android:thumb="@drawable/switch_bg"
android:track="@drawable/track_bg"/>
请指导我我做错了什么或者我这边缺少什么。
试试这个示例,它可能对您有所帮助。Click here