【发布时间】:2011-06-28 22:02:38
【问题描述】:
我在 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>
但正如我向下面的评论员提到的那样,我似乎无法从这里更改样式/文本颜色阴影,因为它似乎只能接受可绘制对象。
当我尝试在此处的按钮上设置不同的样式时,它会强制关闭或不根据状态更改样式。当我只尝试在此处输入样式并将可绘制对象设置为强制关闭的样式时。无论哪种方式,它似乎都不起作用。
【问题讨论】: