Only invalidate() is called if your data has been changed and needs to be redrawn. Usually you do not do this in onDraw() , because at this moment you are drawing the current data, not changing it. (There are some cases where you can do this, for example, to run animations, but usually I would recommend using a delayed message instead to control your own update time.)
hackbod
source share