0

xml ファイルで背景が定義されたボタンがあり、選択した形状や色などで表示されます。

今まで私は古いAPIで作業していましたが、これはうまくいきましたが、コードを最新のAndroidバージョンに更新してから、設定した色が、テスト中のAndroid 4タブレットではうまく動作することがわかりましたが、動作しなくなりました私の古いアンドロイド 2.3.5 電話。代わりに、アプリケーションは私の色の選択を無視し、黒から白へのグラデーション (角度が 270 に設定されている間はそれぞれ上から下) を使用するようです (これはある種のデフォルトであるためだと思います)。角度を変更できるので、xml ファイルを使用する必要がありますが、開始色と終了色を何に設定しても無視されるようです。

ボタンの背景 xml は次のとおりです。

  <?xml version="1.0" encoding="utf-8"?>
  <selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item>     
    <shape>
       <gradient
            android:endColor="@color/MyEndColor"
            android:startColor="@color/MyStartColor"
            android:angle="270" />
        <stroke
            android:width="1dp"
            android:color="@color/MyStrokeColor"/>
        <corners
            android:radius="10dp" />
        <padding
            android:left="6dp"
            android:top="10dp"
            android:right="6dp"
            android:bottom="10dp" />
    </shape>
</item>

レイアウト xml はボタンを次のように定義します。

  <Button           
    android:layout_width="120dip"
    android:layout_height="wrap_content" 
    android:layout_below="@+id/firstEditText"
    android:layout_marginTop="30dip"
    android:layout_centerHorizontal="true"
    android:drawableRight="@drawable/firstBtnIcon"              
    android:textSize="26sp"
    android:textColor="#AA000000"               
    android:textStyle="bold"
    android:onClick="test"
    android:id="@+id/firstBtn"
    android:background="@drawable/mybutton"
   />

ボタンは、スクロールビュー内の相対レイアウト内にあります。

これに対するAPI固有の理由を知っている人はいますか、またはプロジェクトをアップグレードするための既知のEclipseの問題はありますか? (プロジェクトのクリーニングを試みましたが、変化はありません。)

4

1 に答える 1