2016-10-24 3 views
0

Я новичок в Android, у меня есть изображение, вы хотите изменить цвет фона программным образом, щелкая по этой иконке. Как сделать. Пожалуйста, помогите мне.Как изменить изображение с рисунком на картинке при нажатии

У меня есть значок, как это, до щелчка:

Before Click

Я хочу изменить, как это время мыши, после щелчка:

After click

+0

Взгляните на это: [http://stackoverflow.com/questions/21404602/imageview-change-image-on-press-and -on-release] (http://stackoverflow.com/questions/21404602/imageview-change-image-on-press-and-on-release) – ansanes

ответ

0

Вы должны увидеть:

how to apply click event listener to image in android

и внутри слушателя событий нажмите:

backgroundImg.setBackgroundColor(Color.parseColor("#FFFFFF")); 

или

backgroundImg.setBackgroundColor(Color.rgb(100, 100, 50)); 
+1

Я знаю, что прослушиватель кликов ... Я не хочу менять изображение. .. Просто измените цвет фона – Abu

+0

Ops, извините. Вы можете использовать: backgroundImg.setBackgroundColor (Color.parseColor ("# FFFFFF")); У меня есть редактирование ответа. –

0

Что вам нужно здесь селектор.

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 

    <item android:drawable="@drawable/numpad_button_bg_selected" android:state_selected="true"></item> 
    <item android:drawable="@drawable/numpad_button_bg_pressed" android:state_pressed="true"></item> 
    <item android:drawable="@drawable/numpad_button_bg_normal"></item> 

</selector> 

И тогда вам нужно создать два изображения, потому что из того, что я вижу в примерах, вы также задаете цвет текста.

Если вы хотите изменить общий цвет значка, вы можете сделать это с помощью AppCompatImageView и тонирования.

0

Два решения Доступен

  1. Используйте два изображения и обновления на Android: state_selected, андроид: state_pressed. Как и dzsonni ответ.
  2. Использование SVG Image.Update Programmatically.See Ниже ссылка Dynamically changing SVG Image colours on Android

 Смежные вопросы

  • Нет связанных вопросов^_^