我在Android中创建了自定义的ToggleButtons,由于所有按钮都继承自相同的xml,我想根据状态更改它们的行为,因此当状态被选中时,我想更改阴影颜色,但是当前的SDK似乎不支持这种操作。
我创建了一个包含button_colors的xml文件:
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_checked="true"
android:color="#FFFFFF" />
<item
android:color="#000000" />
</selector>
但是这种方法似乎只能对文字颜色起作用,而不能对文字的阴影颜色起作用。 我是否漏掉了什么? 而且我不想在代码中手动为每个按钮设置,因为我希望它适用于应用中的每个按钮。
更新编辑:
我的选择器目前看起来像这样
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_checked="true"
android:drawable="@drawable/button_gradient_selected" />
<item
android:drawable="@drawable/button_gradient" />
</selector>
但是正如我向下面的评论者提到的,似乎我无法从这里更改样式/文本颜色/阴影,因为它似乎只能接受一个可绘制对象。
当我尝试在这里放置不同的样式时,它会强制关闭或者根据状态不改变样式。当我只尝试在这里放入样式并且让可绘制的对象在样式中设置时,它会强制关闭。无论哪种方式,似乎都不起作用。