通过引用颜色和添加透明度信息来定义颜色?

时间:2014-12-23 12:44:23

标签: android xml colors

这只是一个小问题,可以加快速度,但我想知道我是否可以引用其他颜色并在我的XML文件中添加其他信息。

我知道这段代码有效:

<color name="primary1">#708FA3</color>
<color name="primary1_transparent">@color/primary1</color>

但我想知道有没有办法为primary1_transparent添加透明度?通过在任务中连接或之后连接。像这样的东西:

<color name="primary1">#708FA3</color>
<color name="primary1_transparent">#55 + @color/primary1</color>

我知道这看起来很可怕而且不起作用,但希望它能说清楚我想做什么。

显然,节省时间并不重要,所以尴尬的解决方法并没有多大帮助,但它似乎是一个我无法找到的可能存在的功能/黑客。

3 个答案:

答案 0 :(得分:1)

您可以通过在视图中添加以下行来通过XML本身添加透明度:

 android:alpha="0.25" 

您可以调整Alpha值以增加或减少透明度。

示例:

<View
    android:id="@+id/view1"
    android:layout_width="wrap_content"
    android:layout_height="150dp"
    android:alpha="0.25"
    android:background="@android:color/black"
    android:layout_alignParentLeft="true" />

此代码使黑色背景半透明: This

答案 1 :(得分:0)

从colors文档中,在colors.xml中,你总是要声明这样的东西:

<color name=”your_color_name”>#AARRGGBB</color>

AA表示alpha属性。

我猜你要完成的任务(将alpha过滤器应用于定义的颜色)只能在java部分中完成。

答案 2 :(得分:-1)

是的,您当然可以使用颜色代码添加透明度级别。

请尝试使用以下颜色代码。

<color name="primary1">#1A708FA3</color>

我在您的颜色代码之前添加了 1A ,它设置了10%的透明度级别。同样地,您可以添加我在下面列出的所有代码。

100% — FF
95% — F2
90% — E6
85% — D9
80% — CC
75% — BF
70% — B3
65% — A6
60% — 99
55% — 8C
50% — 80
45% — 73
40% — 66
35% — 59
30% — 4D
25% — 40
20% — 33
15% — 26
10% — 1A
5% — 0D
0% — 00