Как изменить цвет кнопки после нажатия? - PullRequest
5 голосов
/ 13 марта 2012

Я создаю кнопку с цветом фона, но когда я нажимаю на нее, она ничего не показывает.
Мне нужно показать другой цвет на кнопке после нажатия, потому что пользователю нужно знать, что кнопка
Нажмите.
IНе понимаю, как это сделать?
Дайте мне предложение.
Вот мой код кнопки.

<Button android:textSize="15px"
      android:id="@+id/button9" 
      android:gravity="center|bottom" 
      android:textColor="@color/myWhiteColor" 
      android:drawableTop="@drawable/math"
      android:text="@string/HomePage_Math" 
      android:background="@color/myMaroonColor" 
      android:layout_width="54dp" 
      android:layout_height="wrap_content" ></Button>

Ответы [ 2 ]

10 голосов
/ 13 марта 2012

// Файл XML сохранен в res / drawable / button_bg.xml:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true"
          android:color="#ffff0000"/> <!-- pressed -->
    <item android:state_focused="true"
          android:color="#ff0000ff"/> <!-- focused -->
    <item android:color="#ff000000"/> <!-- default -->
</selector>

// Этот макет XML будет применять список цветов к представлению:

<Button android:textSize="15px"
      android:id="@+id/button9" 
      android:gravity="center|bottom" 
      android:textColor="@color/myWhiteColor" 
      android:drawableTop="@drawable/math"
      android:text="@string/HomePage_Math" 
      android:background="@drawable/button_bg" 
      android:layout_width="54dp" 
      android:layout_height="wrap_content" ></Button>
0 голосов
/ 10 мая 2016
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:drawable="@color/colorPrimaryDark" />
    <item android:state_focused="true" android:drawable="@android:color/holo_green_dark" />
    <item android:drawable="@color/colorCartButton" />
</selector>

Это будет работать

...