覆盖color.xml文件中的颜色值

时间:2013-05-01 14:22:01

标签: java android xml android-layout colors

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

的值

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

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

这是可能的,但相当昂贵。 @ color / background相当于R.color.background,其中R是您生成的类。在运行时,您可以use reflection使字段可写,然后更改它们。我真的不相信它会如你所愿。

对于您想要的各种颜色,use themes会有不同的想法,可能会让用户switch between them。这会使你的设计和逻辑分开。