I have a button with a curved image set as its foreground image. It looks like:

Now when the button is on pressed state, it shows up like this:

notice the grey rectangular color coming up around the edges. Is there any easy way to avoid the grey background coming all over the rectangle ?
You need to set the property Shows Touch On Highlight to enabled.
Programmatically you can do that with: