2012-05-07 111 views
0

在下面的圖片是我想要的效果(注意屏幕底部的微妙的綠色)。我也想用它作爲多個屏幕,所以我希望它成爲背景。有什麼辦法可以做到這一點?需要在屏幕底部的漸變

enter image description here

+0

你不能將圖像包含爲PNG嗎? – josephus

+0

不,這在其他設備上看起來非常糟糕,因爲拉伸。 –

回答

1

將PNG作爲背景,或者創建一個XML格式的形狀:

創建一個XML文件 - 我們稱之爲 「gradient_background.xml」

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
android:shape="rectangle"> 
    <gradient 
     android:angle="90" 
     android:startColor="#ff0000ff" 
     android:endColor="#00ffffff"/> 
    <corners android:radius="10dp" /> 
</shape> 

更改十六進制顏色值給你想要的。

並將其作爲背景添加到您的ViewGroup中,例如的LinearLayout:

android:background="@drawable/gradient_background" 

編輯: 要實現你在你的評論中提及了什麼,那個漸變高度應該保持固定,而位於底部,但白色的區域可垂直伸展,我建議你使用一個nine-patch你可以使用Draw Nine Patch Tool創建。從SDK的工具文件夾啓動該工具 - 點擊9-patch bat文件(等待它啓動,然後導入你的png)。然後,沿圖像兩側繪製黑線,以定義哪些部分可以拉伸,將文件命名爲something.png,並將其作爲背景在您的ViewGroup中引用。有關詳細信息,請參閱鏈接文檔。

+0

嗯,我不能使用* .png,這會延伸到其他設備上,看起來非常難看。第二種解決方案是我想要做到這一點的方式,但我需要從屏幕底部開始漸變。例如,在320 * 480像素的設備上,前400個像素應該是白色,然後漸變應該從400開始,直到480. –

+0

我已根據您的評論編輯了我的答案。 –