I was trying to do an experiment by using a png to show the battery level, so I've created a couple of circle shapes and 2 copies of my png, then Im trying to hide a circle and one of the png files when battery level is under 20% by using:

normal circle shape transparency $#BLN#>20?100:0$and $#BLN#>20?100:100$ in the other circle

the same with the png files. but Im wondering if there is another way to do this, becouse I need to use 4 layers to do it.

As far as the other color changing element (battery icon). The way you describe it is how to I'd do it. Only other option would be to incorporate the 'empty' battery icon directly into whatever the background is. But yours looks like it was build with shape elements.