4

有没有办法覆盖你的 color.xml 文件中已经设置的颜色?例如 - 我将布局上的背景颜色设置为 backgroundColor = "@color/background" 背景的值 = #000000

我可以覆盖 Java 中的实际背景颜色并将@color/background 设置为 - #FFFFFF 吗?

4

2 回答 2

0

这是可能的,但相当昂贵。@color/background 等价于 R.color.background,其中 R 是您生成的类。在运行时,您可以使用反射使字段可写,然后更改它们。我不太相信它会按你的意愿工作。

一个不同的想法是将主题用于您想要的各种颜色,可能让用户在它们之间切换。这将使您的设计和逻辑分开。

于 2013-07-23T16:41:23.673 回答
0

您可以使用.setBackgroundColor(getResources().getColor(R.color.myColor));在 Java 代码中设置背景颜色。当它在 xml 标签中设置时,这应该覆盖 xml 背景android:background,它至少在我测试过的表行上做了。

于 2013-05-01T14:30:57.373 回答