我在图像视图中有一个可绘制对象,我在运行时对其进行修改,以便为用户的排名提供自定义颜色。修改此方法的方法在低于 20 的 Android 版本上工作正常,但在它之上,可绘制对象无法持续更新。
所讨论的特定方法如下所示:
void setColor(int color) {
GradientDrawable drawable = (GradientDrawable) mImageView.getDrawable().mutate();
drawable.setStroke(14, color);
drawable.invalidateSelf(); // make sure we redraw
}
正如我所说,这在 Android 20 之前工作正常,但在 Android 20 之后,可绘制对象不会添加笔划。有没有新方法还是我忘记了什么?
您应该使视图无效:
mImageView.invalidate();