如何在xml资源文件中引用颜色变量

时间:2014-04-28 18:31:10

标签: android android-xml android-resources

我在res / drawable目录中有这个XML:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item >
    <shape android:shape="rectangle"  >
         <corners android:radius="10dip" />
         <stroke android:width="1dip" android:color="#706969" />
         <gradient android:angle="-90" android:startColor="#117e7a7a" android:endColor="#BB7e7a7a" />            
     </shape>
 </item>
</selector>

我想在android:startColor="#117e7a7a"中引入变量而不是颜色值。 ¿怎么办?我在谷歌找不到任何关于它的信息

由于

2 个答案:

答案 0 :(得分:2)

Here解释了如何从其他资源/布局引用资源(例如颜色)。

简而言之,请使用:

android:startColor="@color/myColor" ...

其中“myColor”可以在values / colors.xml中定义为:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="myColor">#117e7a7a</color>
    .... more colors
</resources>

答案 1 :(得分:2)

colors.xml中创建res/values文件。在该文档中,创建颜色变量。

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <color name="textColorPrimary">#ffffff</color>

</resources>

使用@colors/textColorPrimary

引用您的颜色