Как отключить свойство изменения цвета кнопки по умолчанию на onClick - PullRequest
1 голос
/ 20 апреля 2011

Для кнопки Android по умолчанию, когда я нажимаю на нее, ее цвет меняется на оранжевый на несколько секунд (для уведомления пользователя нажата кнопка). Во всяком случае, я не хочу эту собственность. Я не хочу менять цвет моей кнопки. Как я могу отключить это свойство?

1 Ответ

8 голосов
/ 20 апреля 2011

Посмотрите на как стиль кнопки на Android:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_window_focused="false" android:state_enabled="true"
        android:drawable="@drawable/btn_default_normal" /> 
    <item android:state_window_focused="false" android:state_enabled="false"
        android:drawable="@drawable/btn_default_normal_disable" /> 
    <item android:state_pressed="true" 
        android:drawable="@drawable/btn_default_pressed" /> 
    <item android:state_focused="true" android:state_enabled="true"
        android:drawable="@drawable/btn_default_selected" /> 
    <item android:state_enabled="true"
        android:drawable="@drawable/btn_default_normal" /> 
    <item android:state_focused="true"
        android:drawable="@drawable/btn_default_normal_disable_focused" /> 
    <item
         android:drawable="@drawable/btn_default_normal_disable" /> 
</selector>

Чтобы стилизовать вашу кнопку с помощью ресурсов изображений тем Android, просто создайте свой собственный селектор, скопировав его, и замените все @drawable/btn_default_* на @android:drawable/btn_default_normal в теге item s (и просто удалите item s, который вы не указали). не хочу). Например:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_enabled="true"
        android:drawable="@android:drawable/btn_default_normal" /> 
</selector>

Затем примените этот селектор рисования как android:background вашей кнопки.

Надеюсь, это поможет.

(Если хотите, я также могу привести пример легкого применения этого фона ко всем вашим кнопкам, просто спросите.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...