@@ -0,0 +1,1297 @@
+package com.facebook.drawee.drawable;%0A%0Aimport android.graphics.Canvas;%0Aimport android.graphics.Paint;%0Aimport android.graphics.Rect;%0Aimport android.graphics.RectF;%0A%0Aimport com.facebook.drawee.drawable.ProgressBarDrawable;%0A%0Apublic class CircleProgressBarDrawable extends ProgressBarDrawable %7B%0A    private final Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);%0A    private int mLevel = 0;%0A    private int maxLevel = 10000;%0A%0A%0A    @Override%0A    protected boolean onLevelChange(int level) %7B%0A        mLevel = level;%0A        invalidateSelf();%0A        return true;%0A    %7D%0A%0A    @Override%0A    public void draw(Canvas canvas) %7B%0A        if (getHideWhenZero() && mLevel == 0) %7B%0A            return;%0A        %7D%0A        drawBar(canvas, maxLevel, getBackgroundColor());%0A        drawBar(canvas, mLevel, getColor());%0A    %7D%0A%0A    private void drawBar(Canvas canvas, int level, int color) %7B%0A        Rect bounds = getBounds();%0A        RectF rectF = new RectF((float) (bounds.right * .4), (float) (bounds.bottom * .4),%0A                (float) (bounds.right * .6), (float) (bounds.bottom * .6));%0A        mPaint.setColor(color);%0A        mPaint.setStyle(Paint.Style.STROKE);%0A        mPaint.setStrokeWidth(6);%0A        if (level != 0)%0A            canvas.drawArc(rectF, 0, (float) (level * 360 / maxLevel), false, mPaint);%0A    %7D%0A%7D

Add CircleProgressBar