1

<shape>次のようなタグを使用しています。

<?xml version="1.0" encoding="UTF-8"?>
  <shape xmlns:android="http://schemas.android.com/apk/res/android">
  <solid android:color="#00FFFFFF" />
  <stroke android:width="1dp" android:color="#FFFFFFFF" />
  <padding android:left="1dp" android:top="1dp" android:right="1dp"
    android:bottom="1dp" />
</shape>

<shape>GridView でタグを使用して作成したビューが多数あり、ここで設定された部分を変更する必要があります。

<solid android:color="#00FFFFFF" />

別の色を設定しますが、方法がわかりません... ImageView.Adapter を次のように使用しようとしました:

imageView = new ImageView(context);
        imageView.setLayoutParams(new GridView.LayoutParams(160, 105));
        imageView.setBackgroundColor(myBackgroundColors[position]);
        imageView.setBackgroundResource(R.drawable.border);

setBackgroundResource() を呼び出す前に背景色を設定し、XML で透明色を使用していますが、機能しません...何かアイデアはありますか?

4

1 に答える 1

3

<shape />xml で( Shape Drawable ) タグを使用する場合、コンパイルされたリソースはイメージビューではありません。GradientDrawableにコンパイルされます。<solid />タグは、定義された形状を塗りつぶす単色を定義し、それを として設定しますandroid:color。したがって、これをプログラムで変更するには、setColor()メソッドを使用する必要があります。

于 2012-06-28T15:25:36.777 に答える