Android:从顶部绘制渐变弧

时间:2016-03-08 12:14:32

标签: android automatic-ref-counting paint gradient

渐变从3点钟开始 - 但我希望它从12点开始。

 int color1 = Color.RED;
 int color2 = Color.BLUE;
 int[] colors = {color1, color2};
 Shader gradient = new SweepGradient(width / 2, height / 2, colors, null);
 mArcPaint.setShader(gradient);

有关如何将开头旋转至12的任何建议?我试过

 Matrix matrix = new Matrix();
 matrix.postRotate(270f);
 gradient.setLocalMatrix(matrix);

但它对我不起作用。

1 个答案:

答案 0 :(得分:3)

您需要指定旋转pointX,pointY
在你的情况下:

Matrix matrix = new Matrix();
matrix.postRotate(270f,width / 2, height / 2);
gradient.setLocalMatrix(matrix);

我使用着色器绘制圆圈来显示下面的不同情况
enter image description here