I have a relative layout with several ImageViews (with transparent areas) above each other. The problem is: if I invalidate one of those, all other’s onDraw() methods are called too. Is this normal?
I don’t want all Layers (Views) to redraw since this is a big performance issue- I only want the invalidated view to redraw..
Any ideas?
Yes.
Use Traceview to identify where your performance bottleneck lies.
Or, possibly, really do use layers.
Or, if you are creating a game or something, don’t use the widget framework, but instead directly draw to the
Canvas(or use OpenGL).