367

画像ビューを追加する Web ビューを使用しています。この画像ビューの背景を透明に設定するにはどうすればよいですか?

私はこれを試しました:

mImageview.setBackgroundResource(R.color.trans);

どこtrans<color name="trans">#00000000 </color>

4

25 に答える 25

640

XML で次のコードを追加することにより、レイアウト、ビュー、またはコンポーネントの背景を透明に設定できます。

android:background="@android:color/transparent" 
于 2012-03-10T12:31:26.917 に答える
612

XMLで、Background属性を任意の色、White(#FFFFFF)色合い、またはBlack(#000000)色合いに設定します。透明性が必要な場合は、実際のハッシュコードの前に80を付けてください。

#80000000

これにより、必要な色が透明に変更されます。:)

于 2011-07-29T12:50:17.603 に答える
185

Harshadが言及したことに加えて:

任意の 16 進数カラー コードに 2 つの 16 進数文字を追加できます。8 桁の 16 進数カラー コードの最初の 2 文字は、Android での不透明度を表します。

2 つの 16 進数文字の範囲は 00 から FF までです。例えば、

  • 通常の不透明な黒色の 16 進数 - 「#000000」
  • 完全に透明 - "#00000000"
  • 完全に不透明 - "#FF000000"
  • 50% 透明 - 「#7F000000」

このようにして、任意の色を任意のレベルの透明度に変更できます。

パーセンテージから 16 進数の接頭辞を見つけるには、次のようにします。

パーセンテージを 100 で割り、255 を掛けて 10 進値を取得します。ここで10 進数を 16 進数に変換します。

たとえば、50% の場合、50/100 * 255 = 127 です。リンクを使用すると、16 進値 7F が得られます。

出典: Android: 透明または不透明な背景を作成する方法

于 2012-10-26T07:44:19.900 に答える
178

20% または 30% の透過性を追加したい場合は、CC のように、16 進コードの前にさらに 2 文字追加する必要があります。

ノート

android:background="#CCFF0088"XMLで

ここで、CC はアルファ値、FF は赤の要素、00 は緑の要素、88 は青の要素です。

いくつかの不透明度コード:

16 進不透明度の値

100% — FF
95% — F2
90% — E6
85% — D9
80% — CC
75% — BF
70% — B3
65% — A6
60% — 99
55% — 8C
50% — 80
45% — 73
40% — 66
35% — 59
30% — 4D
25% — 40
20% — 33
15% — 26
10% — 1A
5%  — 0D
0% —  00

次のようにプログラムで不透明度を設定することもできます。

yourView.getBackground().setAlpha(127);

不透明度を 0 (完全に透明) から 255 (完全に不透明) の間で設定します。127.5 はちょうど 50% です。

指定された式を使用して、任意のレベルの透明度を作成できます。半分透明にしたい場合:

 16 |128          Where 128 is the half of 256.
    |8 -0         So it means 80 is half transparent.

25% の透明度の場合:

16 |64            Where 64 is the quarter of 256.
   |4 -0          So it means 40 is quarter transparent.
于 2015-03-03T08:26:41.213 に答える
60

黒には以下のコードを使用します。

<color name="black">#000000</color>

不透明度を使用する場合は、次のコードを使用できます。

<color name="black">#99000000</color>

そして、不透明度コードについては以下のとおりです。

100% — FF
95% — F2
90% — E6
85% — D9
80% — CC
75% — BF
70% — B3
65% — A6
60% — 99
55% — 8C
50% — 80
45% — 73
40% — 66
35% — 59
30% — 4D
25% — 40
20% — 33
15% — 26
10% — 1A
5% — 0D
0% — 00
于 2016-05-19T12:51:41.833 に答える
29

すでに事前定義された定数があります。を使用しColor.TRANSPARENTます。

于 2013-03-20T09:01:02.693 に答える
25

Android には既に透明な組み込みの R.color.transparent があります。http://developer.android.com/reference/android/R.color.html#transparent

しかし、ImageView の背景ではなく、たとえば透明な PNG を使用して、WebView に配置する画像の背景を透明にしたい場合があると思います。実際の画像がまったく透けて見えない場合、ImageView の背景は透けて見えません。

于 2009-09-30T14:52:23.403 に答える
20

コードでそれが必要な場合は、次のようにします。

mComponentName.setBackgroundColor(Color.parseColor("#80000000"));
于 2012-05-31T13:07:34.020 に答える
12

または、別の方法として、次のコードを使用してリソース ID を解析します。

  mComponentName.setBackgroundColor(getResources().getColor(android.R.color.transparent));
于 2012-08-10T06:22:55.377 に答える
5

まだこの問題に直面している人は、これを試してみてください
element.getBackground().setAlpha(0);

于 2013-08-01T02:47:46.003 に答える
5

完全な透明性を得るには、次を使用します。

#00000000

#80000000 で試したところ、不要な黒い透明なオーバーレイが表示されました。最初の 2 桁を変更してみてください。次のように、透明度のレベルを制御します

#00000000
#10000000
#20000000
#30000000
于 2014-12-11T04:16:46.300 に答える
4

私が遭遇した別の作業オプションは、設定することですandroid:background="@null"

于 2015-04-09T14:59:39.143 に答える
2

View.setAlpha(float)可視性を正確に変更するために使用することもできます。

0 は透明、1 は完全に表示されます。;)

于 2013-03-18T21:29:54.893 に答える
2

次のコードを使用してみてください。それはあなたを完全またはそれ以上に助けます。

  1. このコードを使用して背景色を設定するように設計された .xml ファイル:

    android:background="#000000"
    

    また

    android:background="#FFFFFF"
    

    画像はこちら

    または、プログラムで設定することもできます。

  2. また、このコードをプログラムで使用することもできます:

    image.setBackgroundDrawable(getResources().getDrawable(
        R.drawable.llabackground));
    
  3. また、プログラムで背景色を設定するためのこのコード:

    image.setBackgroundColor(Color.parseColor("#FFFFFF"));
    
  4. プログラムで同じためのこのコード:

    image.setBackgroundColor(getResources().getColor(Color.WHITE));
    

色は、透明に使用する色の選択によって異なります。ほとんどの場合、白または #FFFFFF 色を使用します。

についてR.drawable.llabackground:このコード行は、目的に合わせて特別なものや異なるものなど、背景のスタイル用です。これも使えます。

于 2015-05-27T12:53:37.763 に答える
0
ImageView.setBackground(R.drawable.my_background);

ImageView.setBackgroundResource(R.color.colorPrimary);

ImageView.getImageAlpha();

ImageView.setAlpha(125); // transparency
于 2016-11-03T21:57:16.063 に答える