如何使Android上的图像透明?

我正在使用线性布局和框架布局。 在线性布局中,我保留一个图像作为背景,并在框架布局中保留一个imageView。 在那imageView我给一个图像。

现在我想让第二个图像(即在imageView中)透明。 我怎样才能做到这一点?

尝试这个:

ImageView myImage = (ImageView) findViewById(R.id.myImage); myImage.setAlpha(127); //value: [0-255]. Where 0 is fully transparent and 255 is fully opaque. 

注意setAlpha(int)不赞成使用setAlpha(float) ,其中0是完全透明的,1是完全不透明的。 像这样使用它: myImage.setAlpha(0.5f)

android:alpha在XML中是这样做的:

 <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/blah" android:alpha=".75"/> 

在ImageView上设置一个id属性:

 <ImageView android:id="@+id/myImage" 

在你想隐藏图片的代码中,你需要下面的代码。

首先,你需要一个对ImageView的引用:

 ImageView myImage = (ImageView) findViewById(R.id.myImage); 

然后,将可见性设置为结束:

 myImage.setVisibility(View.GONE); 

如果你想让其他地方的代码再次可见,只需将其设置为可见即可:

 myImage.setVisibility(View.VISIBLE); 

如果你的意思是“完全透明”,上面的代码工作。 如果您的意思是“部分透明”,请使用以下方法:

 int alphaAmount = 128; // Some value 0-255 where 0 is fully transparent and 255 is fully opaque myImage.setAlpha(alphaAmount); 

如果您在XML文件中,请使用以下内容使您的图像视图透明!

  android:background="@null" 

在较新版本的Android(至less发布Android 4.2(Jelly Bean))中,setAlpha(int value)方法折旧。 而是使用setAlpha(float value)方法,该方法使用0到1之间的浮点数,其中0是完全透明的,1是不透明的。

使用setAlpha(float alpha)设置透明度。 下面的代码对我来说是我使用的浮点数为0 – 1的alpha值。

  • 0:全透明
  • 0.5 – 50%:透明
  • 1:完全不透明

    ImageView imageView =(ImageView)itemView.findViewById(R.id.imageView); imageView.setImageResource(mResources [位置]); imageView.setAlpha(.80f);

在XML中,使用:

 android:background="@android:color/transparent" 

不build议使用ImageViewtypes的setAlpha(int)方法。

代替

 image.setImageAlpha(127); //value: [0-255]. Where 0 is fully transparent and 255 is fully opaque. 

对于20%的透明度,这为我工作:

 Button bu = (Button)findViewById(R.id.button1); bu.getBackground().setAlpha(204); 

使用:

 ImageView image = (ImageView) findViewById(R.id.image); image.setAlpha(150); // Value: [0-255]. Where 0 is fully transparent // and 255 is fully opaque. Set the value according // to your choice, and you can also use seekbar to // maintain the transparency.