private void drawProgressRectWithClip(Canvas canvas) {
mPaint.setColor(mProgressBarColor);
mPaint.setStyle(Paint.Style.FILL);
//根据进度比率计算出当前的进度值对应的宽度
int progress = (int) (mValidWidth * (getProgress() * 1.0f / getMax()));
canvas.save();
canvas.translate(getPaddingLeft(), getPaddingTop());
//裁剪圆角矩形路径
drawRoundRectPath();
canvas.clipPath(mRoundRectPath);//裁剪之后此时画布就变成了裁剪之后的圆角矩形
//裁剪进度路径
drawProgressPath(progress);
canvas.clipPath(mProgressPath, Region.Op.INTERSECT);
canvas.drawColor(mProgressBarColor);
canvas.restore();
}
DownloadProgressButton.java 文件源码
java
阅读 37
收藏 0
点赞 0
评论 0
项目:Bailan
作者:
评论列表
文章目录