我添加了一个自定义切换按钮,它工作正常。 问题是切换按钮启用和禁用。 按钮打开,按钮关闭,按钮打开和按钮需要不同的布局。禁用,按钮和&启用,按钮关闭&禁用和按钮关闭&启用。 这是开/关的代码。 怎么办?
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true">
<bitmap android:src="@drawable/button_pause_pressed"
android:gravity="center_vertical|center_horizontal" />
</item>
<item android:state_checked="false">
<bitmap android:src="@drawable/button_play_pressed_new"
android:gravity="center_vertical|center_horizontal" />
</item>
</selector>
答案 0 :(得分:1)
之前我没有这样做,但由于 StateList 是一个可绘制的,因此可能引用另一个包含选择器的XML文件。
这看起来像这样......
的 button.xml 强>:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="true"
android:drawable="@drawable/button_enabled"/>
<item android:drawable=@drawable/button_disabled/>
</selector>
的 button_enabled.xml 强>:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true">
<bitmap android:src="@drawable/button_pause_pressed"
android:gravity="center_vertical|center_horizontal" />
</item>
<item android:state_checked="false">
<bitmap android:src="@drawable/button_play_pressed_new"
android:gravity="center_vertical|center_horizontal" />
</item>
</selector>
button_disabled.xml 看起来像 button_enabled.xml ,但包含已停用按钮的外观..