我在使用可绘制的方法填充ShapeDrawable
包含自定义的内容时遇到问题。以下代码在绘制 a 时完美运行:PathShape
setShaderFactory()
RectShape
ShapeDrawable shape = new ShapeDrawable();
shape.setShape(new RectShape());
shape.setShaderFactory(new ShaderFactory() {
@Override
public Shader resize(int width, int height) {
LinearGradient gradient = new LinearGradient (0, 0,
width, height, Color.Red, Color.Blue,
TileMode.REPEAT);
return gradient;
}
});
但是,当我将其更改RectShape
为任何 customPathShape
时,drawable 仅使用渐变起始颜色(红色)填充整个形状。换句话说,自定义形状绘制正确,但颜色完全错误。有没有人见过这个并且知道可能是什么问题?