1

次の画像を見ると、左側のボタンが android 2.1、右側のボタンが 2.2 です。

代替テキスト

左の画像の角が正しく適用されていないことがわかりますが、2.2 では完璧に見えます。私が使用しているxmlはここにあります:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:right="0dip" android:left="0dip" android:bottom="0dip"
    android:top="0dip">
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <corners android:bottomRightRadius="3dip"
            android:bottomLeftRadius="3dip" android:topLeftRadius="3dip"
            android:topRightRadius="3dip" />
        <stroke android:width="1dip" android:color="#70532B" />
        <padding android:left="1dip" android:top="1dip"
            android:right="1dip" android:bottom="1dip" />
    </shape>
</item>
<item android:right="0dip" android:left="0dip" android:bottom="0dip"
    android:top="9dip">
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <gradient android:startColor="#ECAF08" android:endColor="#F6E34B"
            android:angle="270" />
        <corners android:bottomRightRadius="3dip"
            android:bottomLeftRadius="3dip" android:topLeftRadius="0dip"
            android:topRightRadius="0dip" />

    </shape>



</item>
<item android:right="0dip" android:left="0dip" android:bottom="11dip"
    android:top="0dip">
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <gradient android:startColor="#FCEF94" android:endColor="#FFBA00"
            android:angle="270" />
        <corners android:bottomRightRadius="0dip"
            android:bottomLeftRadius="0dip" android:topLeftRadius="3dip"
            android:topRightRadius="3dip" />
    </shape>
</item>

私は何か間違ったことをしていますか、それともこれはAndroid 2.1のバグですか???

4

1 に答える 1

2

グラデーションボタンを作る賢い方法。

<corners>これは、Android 2.1 以下で xml にバグがあることに関係しているのでしょうか。bottomLeftRadius は実際には bottomRightRadius に対応し、その逆も同様です。2.2 で修正された可能性があるため、2.2 では正しいように見えますが、2.1 以下では予期しない方法で重複しています。その場合は、バージョン ターゲット フォルダーを使用して、バージョンごとに異なるドローアブルを使用できます (別名/drawable-v7/および/drawable-v8/)。

于 2010-07-23T14:06:25.827 に答える