0

我习惯于在html中编写东西,而我通常做的一件事情是制作部分透明的图案,以便我可以更改背景颜色,而不必为其创建单独的图像每种颜色。我想知道是否有类似的东西可以在Android上完成。现在我有一个小图像(5x5像素),我重复使用drawables文件夹中的xml文件。它在一个滚动视图的背景中使用,它现在有一个线性布局。切换到一个相对的布局,以便我可以有一个imageview将需要大量的编程更改,所以我想知道是否没有一个更简单的方法。Android使用背景图像和背景颜色

我到处寻找解决方案,答案是一年或两年老,他们说使用两个单独的视图,但它看起来像是现在应该实现的东西。是的,从编程的角度来看,改变颜色就像改变图像一样简单,但只要能够改变颜色而不是为每种新颜色制作图像就会容易得多。

+0

有你尝试将整个布局包装在FrameLayout中,并设置FrameLayout的背景颜色? – panini

回答

2

您可以使用Layer List drawable来实现此目的。首先添加颜色,然后添加位图。

如果您希望以编程方式而不是通过资源文件创建它,请使用LayerDrawable类。

+0

Oooh这是我正在寻找的内容,然后它看起来像我可以使用'setDrawableByLayerId()'来切换颜色。谢谢,这从来没有出现在我的任何搜索。 – JStephen

0

下面的代码为黑色: -

<color name="black">#000000</color> 

现在,如果我想使用的不透明度比你可以用下面的代码: -

<color name="black">#99000000</color> 

及以下不透明代码: -

十六进制不透明度值

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

+0

我了解颜色和不透明度,其使用颜色和部分透明图像在相同视图的背景中。 – JStephen