CircularProgressDrawable is a drawable with capabilities to indicate progress.
Circular Progress Drawable can be defined programatically and the only parameters it will require will be the different colors and the size of the outer ring.
Scale Property for the inner ring can be used to achieve a variety of effects, as pulsating effects, overshoot or to make it disappear completely.
The drawable allows both for a progress and an indetermination mode. In the indetermination mode instead of filling the outer ring, a 90º arc will be shown that can be animated to spin around the inner circle.