@Override
    protected void onStateChange(int color, boolean oldChecked, boolean newChecked) {
        if (oldChecked != newChecked) {
            if (newChecked) {
                mCurColor = color;
            } else {
                mUnCheckedColor = color;
            }

            start();

        } else {
            mCurColor = mUnCheckedColor = color;

            invalidateSelf();
        }
    }
Initializes local dynamic properties from state. This should be called
after significant state changes, e.g. from the One True Constructor and
after inflating or applying a theme.

@param tintStateList ColorStateList
caprice/ui/src/main/java/net/qiujuer/genius/ui/drawable/CircleCheckDrawable.java