|
5 | 5 | import android.content.res.TypedArray; |
6 | 6 | import android.graphics.Canvas; |
7 | 7 | import android.graphics.Color; |
| 8 | +import android.graphics.CornerPathEffect; |
8 | 9 | import android.graphics.Paint; |
9 | 10 | import android.graphics.Path; |
10 | 11 | import android.graphics.PathMeasure; |
@@ -78,6 +79,7 @@ public ENPlayView(Context context, AttributeSet attrs) { |
78 | 79 | mPaint.setStrokeCap(Paint.Cap.ROUND); |
79 | 80 | mPaint.setColor(lineColor); |
80 | 81 | mPaint.setStrokeWidth(lineWidth); |
| 82 | + mPaint.setPathEffect(new CornerPathEffect(1)); |
81 | 83 |
|
82 | 84 | mBgPaint = new Paint(Paint.ANTI_ALIAS_FLAG); |
83 | 85 | mBgPaint.setStyle(Paint.Style.STROKE); |
@@ -130,6 +132,7 @@ protected void onDraw(Canvas canvas) { |
130 | 132 | canvas.drawLine(mCenterX - mCircleRadius, mCenterY - 1.6f * mCircleRadius, |
131 | 133 | mCenterX - mCircleRadius, mCenterY + 1.6f * mCircleRadius, mPaint); |
132 | 134 |
|
| 135 | + if (mFraction != 0) |
133 | 136 | canvas.drawArc(mRectF, 0f, 180f / 0.3f * mFraction, false, mPaint); |
134 | 137 |
|
135 | 138 | canvas.drawArc(mBgRectF, -105 + 360 * mFraction, 360 * (1 - mFraction), false, mPaint); |
|
0 commit comments