我正在开发一个需要像这样的“圆形进度条”的应用程序(它不需要改变颜色或中间为空,对我来说一个简单的事情就足够了,但如果你想告诉我如何改变颜色,我很乐意学习 :) )
我想用它来显示我的应用程序中的电池百分比
我正在开发一个需要像这样的“圆形进度条”的应用程序(它不需要改变颜色或中间为空,对我来说一个简单的事情就足够了,但如果你想告诉我如何改变颜色,我很乐意学习 :) )
我想用它来显示我的应用程序中的电池百分比
我希望像这个库这样的东西会有所帮助
布局中的定义很简单:
<com.lylc.widget.circularprogressbar.example.CircularProgressBar
android:id="@+id/circularprogressbar1"
style="@style/Widget.ProgressBar.Holo.CircularProgressBar"
android:layout_width="120dip"
android:layout_height="120dip"
android:layout_marginTop="10dip"
circular:subtitle="subtitle"
circular:title="Title" />
并且用法也不复杂:
CircularProgressBar c3 = (CircularProgressBar) findViewById(R.id.circularprogressbar3);
c3.setTitle("June");
c3.setSubTitle("2013");
c3.setProgress(42);
它还支持动画进度,以防您需要它。所有学分归原作者所有。我刚找到它。希望它有所帮助
我不知道我是否理解你,但我认为它可以帮助你: 如何改变圆形进度条的颜色?
使用此方法并将其设置为图像视图,它会在图像视图上绘制位图。你可以使用这段代码来显示一个进度对话框。
private void circularImageBar(ImageView iv2, int i) {
Bitmap b = Bitmap.createBitmap(300, 300,Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(b);
Paint paint = new Paint();
paint.setColor(Color.parseColor("#c4c4c4"));
paint.setStrokeWidth(10);
paint.setStyle(Paint.Style.STROKE);
canvas.drawCircle(150, 150, 140, paint);
paint.setColor(Color.parseColor("#FFDB4C"));
paint.setStrokeWidth(10);
paint.setStyle(Paint.Style.FILL);
final RectF oval = new RectF();
paint.setStyle(Paint.Style.STROKE);
oval.set(10,10,290,290);
canvas.drawArc(oval, 270, ((i*360)/100), false, paint);
paint.setStrokeWidth(0);
paint.setTextAlign(Align.CENTER);
paint.setColor(Color.parseColor("#8E8E93"));
paint.setTextSize(140);
canvas.drawText(""+i, 150, 150+(paint.getTextSize()/3), paint);
iv2.setImageBitmap(b);
}