Opacity on a background Drawable image in View (using XML Layout)

xil3 picture xil3 · Feb 11, 2011 · Viewed 55.1k times · Source

I was just wondering if there was a way to change the opacity of the background image for a View (ie. TextView, etc.).

I know that I can set the background image like this:

android:background="@drawable/my_drawable_image"

Or I can set a specific background colour with an alpha setting like this:

android:background="#10f7f7f7"

Is there a way I can control the opacity (set the alpha) if I'm setting the background as a drawable image? And I want to do this in the XML Layout. I already know that I could grab the Drawable object and programmatically set the alpha, but I want to see if I can do it in the layout.

Answer

xil3 picture xil3 · Feb 14, 2011

I ended up just going with the programmatical solution, since it doesn't look like it can be done via the XML layouts.

Drawable rightArrow = getResources().getDrawable(R.drawable.green_arrow_right_small);

// setting the opacity (alpha)
rightArrow.setAlpha(10);

// setting the images on the ImageViews
rightImage.setImageDrawable(rightArrow);