如何使用 android:color 更改 ToggleButton 颜色?
How to change ToggleButton color using android:color?
我想根据其状态更改 ToggleButton 颜色。我找到了解决方案,但它不起作用。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:color="@color/buttonA"/>
<item android:state_checked="false" android:color="@color/buttonDisabled"/>
</selector>
我不能使用 android:color,这里只允许使用 android:drawable。 (得到这个例外)
Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #3: <item> tag requires a 'drawable' attribute or child tag defining a drawable
在 res/values 文件夹中创建名为 colors.xml 的 xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="red">#ff0000</color>
<color name="green">#00ff00</color>
</resources>
在 drawable 文件夹中,创建一个 xml 文件 my_btn_toggle.xml:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false" android:drawable="@color/red" />
<item android:state_checked="true" android:drawable="@color/green" />
</selector>
并在 xml 部分定义您的切换按钮:
<ToggleButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="New ToggleButton"
android:id="@+id/toggleButton"
android:background="@drawable/my_btn_toggle"/>
要了解更多这里是link
我想根据其状态更改 ToggleButton 颜色。我找到了解决方案,但它不起作用。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:color="@color/buttonA"/>
<item android:state_checked="false" android:color="@color/buttonDisabled"/>
</selector>
我不能使用 android:color,这里只允许使用 android:drawable。 (得到这个例外)
Caused by: org.xmlpull.v1.XmlPullParserException: Binary XML file line #3: <item> tag requires a 'drawable' attribute or child tag defining a drawable
在 res/values 文件夹中创建名为 colors.xml 的 xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="red">#ff0000</color>
<color name="green">#00ff00</color>
</resources>
在 drawable 文件夹中,创建一个 xml 文件 my_btn_toggle.xml:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false" android:drawable="@color/red" />
<item android:state_checked="true" android:drawable="@color/green" />
</selector>
并在 xml 部分定义您的切换按钮:
<ToggleButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="New ToggleButton"
android:id="@+id/toggleButton"
android:background="@drawable/my_btn_toggle"/>
要了解更多这里是link