2011-01-19 13 views
15

私がしようとしているのは、多くのアクティビティで自分のアプリケーションを頻繁に使用するLinearLayoutで使用する共通の背景を定義することです。この特定のレイアウトは、各アクティビティの上部に表示されるヘッダーです。1つのAndroidドロワブルで複数の図形を使用できますか?

私がしようとしているのは、グラデーションで直線レイアウトを塗り潰し、グラデーションの下に水平線を持つ描画可能な線を作成することです。

これが可能かどうかは知っていますか、またはこの種のことはネストされたレイアウトでのみ行う必要がありますか。

私は、これはの上に複数の基礎となるドローアブルを描く(私はあなたの質問を理解していれば、多分あなたは、レイヤの描画可能な操作を行うことができます(他のファイルに常に定義)、描画可能なXMLが

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <gradient android:startColor="#AA000000" android:endColor="#AA333333" 
     android:angle="270" /> 
</shape> 
</item> 
<item> 
<shape android:shape="line"> 
    <stroke android:width="3dp" android:color="#FFFFFFFF" 
      android:dashWidth="1dp" android:dashGap="2dp" /> 
    <size android:height="5dp" /> 
</shape> 
</item> 
</selector> 

答えて

30

Drawableのは、複数のシェイプを受け入れているattemptatお互いに)

私はこれをここに書いていますので、私はテストしませんでしたが、これを試して、この素晴らしいドキュメントをお読みください。

<?xml version="1.0" encoding="utf-8"?> 
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
     <item android:drawable="@drawable/shape_7"/> 
     <item android:drawable="@drawable/shape_1"/> 
    </layer-list> 

the android complete xml resources

歓声

+25

(Y座標)、それらを他の以下いずれかを設定することも可能ですか? –

+1

各項目にアンドロイド名前空間を追加します。とその完璧 – Philiiiiiipp

+1

良い点@Philiiiiiipp。ただし、リスト内の各項目に名前空間を追加するのではなく、レイヤーリストに名前空間を追加するだけで十分です。同様に:。 – MemoryLeak

関連する問題