2011-01-24 235 views
5

如何使用Shader(如SweepGradient)绘制圆弧?在Android中使用SweepGradient绘制圆弧

的例子我都采取了喷漆的对象:

Paint lightRed = new Paint(); 
lightRed.setAntiAlias(true); 
lightRed.setStyle(Style.STROKE); 
lightRed.setStrokeWidth(12); 
lightRed.setColor(0xFFCC0000); 
... 
canvas.drawArc(rectf, -90, 360, false, lightRed); 

不要认为它的确与众不同,但我使用它来绘制一个主屏幕小部件

回答

11

试试这个:

Shader gradient = new SweepGradient (0,getMeasuredHeight()/2, Color.RED, Color.WHITE); 
lighted.setShader(gradient); 
canvas.drawArc(rectf, -90, 360, false, lightRed); 

您可以修改位置和颜色值。