Цвет тени на кнопках в зависимости от состояния в XML - Android

Я создал пользовательские ToggleButton в Android и, поскольку все кнопки наследуют от одного и того же xml, я хочу изменить, как они действуют в зависимости от состояния, поэтому, когда состояние проверено, я хочу изменить цвет тени, но это не кажется возможным с текущим SDK.

Я создал 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>

Но это, похоже, работает только с цветом текста, но не с цветом тени для текста. Может быть, я что-то упускаю? И лучше не делать это для каждой кнопки вручную в коде, так как я хочу, чтобы это применялось к каждой кнопке в приложении.

UPDATE EDIT:

Мой селектор сейчас выглядит так

<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>

Но, как я уже говорил комментатору ниже, я не могу изменить стиль/цвет текста/тень отсюда, так как он может принимать только drawable, похоже.

Когда я пытаюсь установить другой стиль на кнопку здесь, она принудительно закрывается или не меняет стиль в зависимости от состояния. Когда я пытаюсь установить стиль только здесь и заставить drawable быть установленным в этом стиле, он принудительно закрывается. В любом случае это не работает.

11
задан Joakim Engstrom 17 February 2011 в 11:01
поделиться