在android中制作这个圆圈的最佳方法是什么?我不想学习OpenGL只是为了画一个简单的进度圈(环),但如果没有其他方法我会的。在开始之前,我想问你们,你们怎么看。我对如何制作这个的各种建议持开放态度。
问问题
5563 次
3 回答
3
ProgressBar
Android 内置了一个小部件,默认情况下呈现为圆形。
您可以使用ImageView
由 a 支持ShapeDrawable
的圆环,以及您选择的渐变扫描填充。
您可以创建 100 个 PNG 文件,每个百分比一个,并使用这些文件,也许通过LevelListDrawable
.
您可以View
使用Canvas
.
可能还有其他选择,但这应该会让你继续前进。
于 2012-10-13T18:29:03.777 回答
0
显然使用 SVG 并不太难,查看 Leandro Linares 的进度圈示例
于 2012-11-24T23:15:08.090 回答
0
坦克到@CommonsWare,这是我的代码示例
public class SampleView extends View {
public SampleView(Context context) {
super(context);
}
@Override
protected void onDraw(Canvas canvas) {
Canvas canvas.drawColor(Color.CYAN);
Paint p = new Paint();
// smooths
p.setAntiAlias(true);
p.setColor(Color.RED);
p.setStyle(Paint.Style.STROKE);
p.setStrokeWidth(5);
// opacity
//p.setAlpha(0x80); //
RectF rectF = new RectF(50, 20, 100, 80);
canvas.drawOval(rectF, p);
p.setColor(Color.BLACK);
canvas.drawArc (rectF, 90, 45, true, p);
}
}
于 2016-03-21T22:10:00.460 回答