Java 编译后,能否更改XML可绘制文件中指定的颜色?

Java 编译后,能否更改XML可绘制文件中指定的颜色?,java,xml,Java,Xml,我的团队正在创建一个小的儿童应用程序,希望用户匹配形状和/或颜色。我们有一个主形状,一个正确的形状,和显示在屏幕上的垃圾形状1/垃圾形状2。这些形状在运行时随机确定,并加载到活动中以显示给用户。现在,每个形状都是XML可绘制的,并且具有硬编码的颜色。(红色圆圈、黄色星星、蓝色正方形等) 我的问题是: 是否有任何方法可以通过编程更改形状的颜色?假设我想把每个形状的颜色都改成蓝色:一个蓝色的圆圈,另一个蓝色的圆圈,三角形和星星,都是蓝色的?有没有一种方法可以在Java中实现这一点;编辑xml属性 我

我的团队正在创建一个小的儿童应用程序,希望用户匹配形状和/或颜色。我们有一个主形状,一个正确的形状,和显示在屏幕上的垃圾形状1/垃圾形状2。这些形状在运行时随机确定,并加载到活动中以显示给用户。现在,每个形状都是XML可绘制的,并且具有硬编码的颜色。(红色圆圈、黄色星星、蓝色正方形等)

我的问题是:

是否有任何方法可以通过编程更改形状的颜色?假设我想把每个形状的颜色都改成蓝色:一个蓝色的圆圈,另一个蓝色的圆圈,三角形和星星,都是蓝色的?有没有一种方法可以在Java中实现这一点;编辑xml属性

我们有一堆列表中的所有形状:


ShapeBuilder ShapeBuilder=新的ShapeBuilder(游戏模式);
Stack stackOfShapes=shapeBuilder.getStackofShapes();
//收集第一轮并分配给活动
List round=stackOfShapes.pop();
_主形.立根资源(R.可绘制.圆形);
然后我们尝试分配一种颜色,到目前为止,我们已经尝试过将圆的_main形状分配给蓝色:(但是我觉得这是一条错误的道路)

我在试着看看我们是否可以改变这个XML文件

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
    <solid android:color="#9F2200"/> <!-- red, to blue -->
    <size android:width="80dp" android:height="80dp"/>
</shape>



很抱歉,这是我的第一个问题,因此可能写得很糟糕,但我们都必须从某个地方开始

这将有助于看到一些代码。否则,人们很可能不会在这方面帮助你。在说这些的同时,如果人们看到你在问之前尝试了一些东西,这也很有用。
yourview.setBackgroundColor(getResources().getColor(R.color.blue));
yourview.setBackgroundColor(getResources().getColor(R.color.blue));