我试图制作两个渐变的组合。
int startColor = 0x0000ff00;
int endColor = 0xff00ff00;
float angle = 45f;
渐变1:
SweepGradient sweepGradient = new SweepGradient(d/2, d/2, new int[]{startColor, endColor, endColor}, new float[]{0, angle/360f, 1f});
渐变2:
RadialGradient radialGradient = new RadialGradient(d/2, d/2, d/2, startColor, endColor, Shader.TileMode.CLAMP);
结果:
ComposeShader composeShader = new ComposeShader(sweepGradient, radialGradient, PorterDuff.Mode.MULTIPLY);
我希望结果的alpha是乘法为1和2 alpha。例如,扫描的上边缘应该是褪色,就像1.为什么它是尖锐的?
出了什么问题?
解决!
感谢pskink,
添加setLayerType(View.LAYER_TYPE_SOFTWARE, null)
可以解决问题。