I have a view which is used as an item in a ListView
. In my custom adapter, I change the background of the view using View.setBackgroundResource()
depending on the item's position in the list. (I have separate assets for the first and last items in the list.)
This sets the correct background image as expected, but it has the nasty side-effect that all the padding I'd set in the XML definition of the view is completely ignored.
(If I set the background drawable in the XML, and don't try to vary it at runtime in the adapter, the padding all works fine.)
How can I alter the background image, and retain the padding? Is this a bug?
EDIT it seems someone else has found the same problem here: Does changing the background also change the padding of a LinearLayout?