我想在我的应用程序中使用一些ShapeDrawables,它们都很相似,但颜色不同等。显然我可以在单独的xml文件中定义它们,但有一种更有效的方法来获得一个xml定义,实例化各种对象并在代码或xml中更改颜色?你也许可以通过在xml中定义的一个ShapeDrawable上调用mutate()来做到这一点,但这会返回一个Drawable,而不是一个可绘制的形状。
答案 0 :(得分:0)
也许使用GradientDrawable而不是ShapeDrawable。
答案 1 :(得分:0)
实际上可以做你要求的事,
this post告诉您如何操作。
我试了一下它完美无缺。我还没有找到如何从列表中引用单个drawable 似乎级别列表用于表示单个对象以表示对象的不同状态。虽然在这种情况下,我们将它用作可绘制的容器,以避免有许多小文件 也许未来的anrdroid版本将支持专用的可绘制容器。