From 58e3bde0c41530768a7bb8152c3cb742b9ddbfa2 Mon Sep 17 00:00:00 2001 From: renhaoting <370797079@qq.com> Date: Tue, 25 Nov 2025 14:18:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=9C=86=E5=BD=A2progressbar?= =?UTF-8?q?+1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/architecture/widget/CircleProgressBar.kt | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/core/architecture/src/main/java/com/ama/core/architecture/widget/CircleProgressBar.kt b/core/architecture/src/main/java/com/ama/core/architecture/widget/CircleProgressBar.kt index 192f38d..d9ac129 100644 --- a/core/architecture/src/main/java/com/ama/core/architecture/widget/CircleProgressBar.kt +++ b/core/architecture/src/main/java/com/ama/core/architecture/widget/CircleProgressBar.kt @@ -49,7 +49,6 @@ class CircleProgressBar @JvmOverloads constructor( ) try { - // 获取自定义属性 progressColor = typedArray.getColor( R.styleable.CircleProgressBar_progressColor, ContextCompat.getColor(context, R.color.progress_green) @@ -62,7 +61,7 @@ class CircleProgressBar @JvmOverloads constructor( progressWidth = typedArray.getDimension( R.styleable.CircleProgressBar_progressWidth, - dpToPx(2f) + 2.dp.toFloat() ) val iconRes = typedArray.getResourceId(R.styleable.CircleProgressBar_centerIcon, 0) @@ -88,7 +87,6 @@ class CircleProgressBar @JvmOverloads constructor( progressPaint.color = progressColor progressPaint.strokeWidth = progressWidth - // 设置半透明效果,模仿图片中的绿色弧线 progressPaint.alpha = 180 } @@ -114,16 +112,16 @@ class CircleProgressBar @JvmOverloads constructor( override fun onDraw(canvas: Canvas) { super.onDraw(canvas) - // 绘制背景圆环 + // 背景 canvas.drawArc(rectF, 0f, 360f, false, backgroundPaint) - // 绘制进度弧线 + // 进度弧线 if (currentProgress > 0) { val sweepAngle = (currentProgress.toFloat() / maxProgress) * 360f canvas.drawArc(rectF, startAngle, sweepAngle, false, progressPaint) } - // 绘制中心图标 + // 中心图标 centerIcon?.let { icon -> drawCenterIcon(canvas, icon) } @@ -186,9 +184,6 @@ class CircleProgressBar @JvmOverloads constructor( invalidate() } - private fun dpToPx(dp: Float): Float { - return dp * resources.displayMetrics.density - } override fun onDetachedFromWindow() { super.onDetachedFromWindow()