2017-05-26 53 views
-1

我想使用圆形图标在我的活动中显示几个圆圈,每个圆圈都设置为不同的颜色。 要做到这一点我想这个代码:使用同一图标创建不同的可绘制实例

Drawable solidCircle = ContextCompat.getDrawable(context, R.drawable.solid_circle); 
solid.setColorFilter(color, PorterDuff.Mode.SRC_ATOP); 

(颜色随机选择)

我的问题是,所有的圈子得到相同的颜色 - 最后一个我叫setColorFilter了,我想是因为drawable始终是相同的实例。

我的问题是如何使用同一个圆的不同Drawable实例,这样我就可以做到这一点而不必复制我的资产?

回答

0

如果你想这样做,你可以简单地克隆drawable。

Drawable clone = drawable.getConstantState().newDrawable(); 
相关问题