2012-05-07 7 views
0

下の画像は私が望む効果です(画面の下部に微妙な緑色があります)。私はまた複数のスクリーンとして使いたいので、バックグラウンドにしたい。これを達成する方法はありますか?画面の下部にグラデーションが必要

enter image description here背景としてPNGを設定

+0

イメージをpngに含めることはできませんか? – josephus

+0

いいえ、それはストレッチのために他のデバイスでは本当に悪くなります。 –

答えて

1

、または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" 

EDIT:あなたが使用 あなたはグラデーションの高さは、底部に配置しながら、固定したままにする必要がありますが、白い部分は縦に伸ばすことができ、あなたのコメントで述べたものを達成するために、私はお勧めnine-patchいるあなたをDraw Nine Patch Toolで作成できます。 SDKのツールフォルダからツールを起動します.9パッチバットファイルをクリックします(しばらく待ってからpngをインポートします)。次に、画像の両側に黒い線を引いて、伸ばすことができる部分を定義し、ファイルにsomething.9.pngという名前を付け、ViewGroupで背景として参照します。詳細は、リンク先のドキュメントを参照してください。

+0

さて、私は* .pngを使うことはできません。それは他のデバイスで伸びて、本当に醜く見えます。 2番目の解決方法は、私がそれをやりたいのですが、私は画面の下部に勾配が必要です。たとえば、320 * 480ピクセルのデバイスでは、最初の400ピクセルに白が表示され、勾配は400から480になるはずです。 –

+0

あなたのコメントに基づいて回答を編集しました。 –

関連する問題