2011-01-24 182 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); 

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