在Android中使用SweepGradient绘制弧形

7

如何使用着色器(例如SweepGradient)绘制弧形?

我所拥有的示例都是使用Paint对象实现的:

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

不要认为这会有什么区别,但我正在使用它来绘制一个主屏幕小部件

1个回答

15

试试这个:

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

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接