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