Отключить кнопку с пользовательским фоном Android
Когда у меня есть кнопка андроида и она отключена, кнопка выглядит прозрачной.
У меня есть кнопка с пользовательским фоном для нажатого и сфокусированного состояния. Я хочу отключить его из кода. Когда я пытаюсь button.setEnabled(false);
Я отключаю кнопку, но она сохраняет тот же пользовательский фон. Любая идея, как отключить мою пользовательскую кнопку и изменить фон как прозрачный тоже?
2 ответа
Решение
Может быть, вы могли бы использовать android:state_enabled
и установить для этого прозрачного рисования в вашем селекторе для этой кнопки?
Вы должны создать свой собственный селектор, как это:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_enabled="false"
android:drawable="@drawable/btn_red" />
<item
android:state_pressed="true"
android:state_enabled="true"
android:drawable="@drawable/btn_orange" />
<item
android:state_focused="true"
android:state_enabled="true"
android:drawable="@drawable/btn_orange" />
<item
android:state_enabled="true"
android:drawable="@drawable/btn_black" />
</selector>