我使用的应用程序中的颜色定义非常复杂。除此之外:
- 有遗留定义
- 有基本的颜色定义
- 有一个单独的颜色定义层引用基本定义
我想在多极文件中组织这些颜色定义,可能包括彼此。
这怎么可能?
你可以在任何文件中定义你的颜色,只要它是在values
目录下。
在你的情况下,你可以这样做:
values
|-- legacy_colors.xml
|-- basic_colors.xml
|-- high_level_colors.xml
文件不可能包含彼此,但是您可以像这样引用其他文件中的值:
File: basic_colors.xml
<color name="basic_blue">#00bbff</color>
File: high_level_colors.xml
<color name="list_item_backgroud">@color/basic_blue</color>
您可以根据需要在res/values/
(或res/values-.../
)中拥有尽可能多的文件。它们中的任何一个都可以定义颜色。虽然惯例使用colors.xml
文件,但这不是必需的。
虽然没有"包括彼此"的概念。所有的颜色资源都在同一个命名空间(R.color.XXXX
)。