我尝试用这段代码制作一个渐变圆:
RadialGradient gradient = new RadialGradient(0, 0, 40, new int[]{Color.RED, Color.YELLOW}, new float[] {3,4}, android.graphics.Shader.TileMode.CLAMP);
这只会用红色制作一个圆圈。为什么不是黄色渐变?
我尝试用这段代码制作一个渐变圆:
RadialGradient gradient = new RadialGradient(0, 0, 40, new int[]{Color.RED, Color.YELLOW}, new float[] {3,4}, android.graphics.Shader.TileMode.CLAMP);
这只会用红色制作一个圆圈。为什么不是黄色渐变?
试试这样的 RadialGradient gradient1 =new android.graphics.RadialGradient(0, 0,40,Color.RED,Color.YELLOW, android.graphics.Shader.TileMode.CLAMP);
可能是因为您的 float[] 参数是伪造的......这些值不应该在 0 和 1 之间吗?所以要有一个红色的中心和一个黄色的边缘,你可以使用 float[] {0,1}。
(这有点猜测......我还没有运行代码来检查,文档也不太清楚)。