2013-08-29 5 views
10

У меня есть переключатель, который меняет изображение кнопки при нажатии. Я также установил изображение, когда кнопка отключена. Я пытаюсь отключить кнопку программно, но изображение кнопки отключено. Правильно ли выбран мой button_selector?Отключить кнопку с селектором кнопок

<item android:drawable="@drawable/red_btn_bg_disabled" android:state_enabled="false"/> <!-- disabled --> 

<item android:drawable="@drawable/red_btn_bg_pressed" android:state_pressed="true"/> <!-- pressed --> 
<item android:drawable="@drawable/red_btn_bg_pressed" android:state_focused="true"/> <!-- focused --> 

<item android:drawable="@drawable/red_btn_bg"/> <!-- default --> 

Я использую mButton.setEnabled (ложь) в своем коде, чтобы отключить кнопку

ответ

24

попробовать это один и я загрузил один пример проекта для вас Ознакомься проект

selector.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 

     <item android:drawable="@drawable/btn_disable" android:state_enabled="false"/> 
     <item android:drawable="@drawable/btn_pressed" android:state_pressed="true"/> 
     <item android:drawable="@drawable/btn_normal"/> 

    </selector> 

и использовать этот селектор в кнопке следующим образом

<Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/button1" 
     android:layout_below="@+id/button1" 
     android:layout_marginTop="30dp" 
     android:background="@drawable/selector" 
     android:enabled="false" 
     android:text="Disable Button" /> 

Код ссылки https://www.dropbox.com/s/lydkog10rkujbsa/ButtonSelector.rar

+0

Работаю как шарм! «включено» помогло мне много –

3

Попробуйте это.

<item android:drawable="@drawable/red_btn_bg_pressed" android:state_pressed="true"/> <!-- pressed --> 

<item android:drawable="@drawable/red_btn_bg_disabled" android:state_enabled="false"/> <!-- disabled --> 

<item android:drawable="@drawable/red_btn_bg"/> <!-- default -->