2

ボタンに背景テクスチャと境界線を追加しようとしています。しかし、私は自分のボタンの両方を見ることができません。

これで私は私の背景画像を持っています

<item>
 <bitmap android:src="@drawable/button_background" android:tileMode="repeat" />
 </item>

そしてこれで私は境界線を持っているはずです

<corners android:radius="5dp" />
  <stroke android:width="3px" android:color="#FFFFFF" />

両方を使用してそれらを結合しようとしました<shape><layer-list>、境界線または背景テクスチャのいずれかを取得できます。

4

1 に答える 1

5

9patches は通常、この状況に非常に適しています (SDK の tools ディレクトリにある draw9patch ツールを必ず使用してください) が、独自のグラフィックを作成したくない場合 (複数のバージョンを作成する必要があることに注意してください)各解像度) で XML を使用したい場合は、次のようにすることができます。

赤いボタン

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" >
        <shape>
            <solid
                android:color="#ef4444" />
            <stroke
                android:width="1dp"
                android:color="#992f2f" />
            <corners
                android:radius="3dp" />
            <padding
                android:left="10dp"
                android:top="10dp"
                android:right="10dp"
                android:bottom="10dp" />
        </shape>
    </item>
    <item>
        <shape>
            <gradient
                android:startColor="#ef4444"
                android:endColor="#992f2f"
                android:angle="270" />
            <stroke
                android:width="1dp"
                android:color="#992f2f" />
            <corners
                android:radius="3dp" />
            <padding
                android:left="10dp"
                android:top="10dp"
                android:right="10dp"
                android:bottom="10dp" />
        </shape>
    </item>
</selector>

ソース: http://www.dibbus.com/2011/02/gradient-buttons-for-android/

于 2013-01-03T15:59:22.733 に答える