我已经有了一个xml来描述我的可绘制图形的形状和颜色:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/light_red"/>
<corners android:radius="10dp"/>
</shape>
但我想用这个画作为一个全球性的一个,像有圆角时,我用它,但能够改变 backgroundColor
.
但当我试图改变 backgroundColor
在程序上,它覆盖了我想要的颜色,但它也覆盖了变平的圆角。
目前,如果我想要有不同颜色的圆角,我需要创建多个xml文件,其中只有 android:color
改变。
2条答案
按热度按时间oprakyz71#
只是为了以后来这里的其他人,我用你给我的东西做了一些研究,这个
setColorFilter
自api 29以来已弃用。我找到了不推荐使用的方法的解决方案(稍微长一点,但有效):
628mspwn2#
要以编程方式更改形状中全局定义的颜色,请使用以下命令: