For example, if each row in a list had a background that was a gradient, would it be better to use a image of a gradient or to define that gradient in a shape drawable in xm
Don't prematurely optomize. That's a really hard thing to know what will be better. I would just do it in xml since it would be easier to change.