I have an ImageButton
in my app and I need to change the tint of the image when the button is pressed/focused
. I have the ImageButton
set to get its src
from an XML file which as follows:
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- pressed --> <item android:state_pressed="true" android:tint="@color/black" android:drawable="@drawable/search" /> <!-- focused --> <item android:state_focused="true" android:tint="@color/black" android:drawable="@drawable/search" /> <!-- default --> <item android:tint="@null" android:drawable="@drawable/search" /> </selector>
However the tint isn't applied when the ImageButton
is pressed or focused - the image just displays as normal. The color black is defined as #000000
as always. Any ideas?
You can change the tint, quite easily in code via:
ImageButton button = (ImageButton) this.findViewById(R.id.button_i_want_to_modify); button.setColorFilter(Color.argb(255, 255, 255, 255)); // White Tint
Hope it helps.
JS
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With