我像这样画一个弧:
int STEPS = 45;
int STARTANGLE = 270;
Paint p = new Paint();
p.setAntiAlias(true);
p.setStyle(Paint.Style.STROKE);
p.setStrokeWidth(200);
// opacity
p.setAlpha(60); //
RectF rectF = new RectF(400, 400, 800, 800);
p.setColor(Color.BLACK);
for(int i = STARTANGLE; i < 90/STEPS * 4 * STARTANGLE; i += STEPS) {
canvas.drawArc(rectF, i, 45, false, p);
}
目标是为此设置动画,但我只是写了一个forloop,看看是否一切正常。
我的不透明度不起作用。它是一条黑色的笔触线,但下面的东西被掩盖了。
你不能设置笔画的不透明度吗?
答案 0 :(得分:2)
setColor()
设置alpha值和RGB值。因此,您对setColor()
的调用正在更改之前使用setAlpha()
设置的字母。
答案 1 :(得分:0)
Dhruti的链接激励我改变我做事的顺序。
您需要先设置颜色然后再设置alpha。然后就行了。