GradientDrawable setStroke 在 Android Lollipop 上不起作用



我在图像视图中有一个可绘制对象,我在运行时对其进行修改,以便为用户的排名提供自定义颜色。修改此方法的方法在低于 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();

相关内容

  • 没有找到相关文章

最新更新