我正在使用一个web视图,其中我正在添加一个图像视图。如何将此图像视图的背景设置为透明?
我试过了:
mImageview.setBackgroundResource(R.color.trans);
其中trans→<color name="trans">#00000000 </color>。
我正在使用一个web视图,其中我正在添加一个图像视图。如何将此图像视图的背景设置为透明?
我试过了:
mImageview.setBackgroundResource(R.color.trans);
其中trans→<color name="trans">#00000000 </color>。
当前回答
你也可以使用View.setAlpha(float)来精确地改变可见性。
0是透明的,1完全可见。;)
其他回答
或者,作为替代,用下面的代码解析资源ID:
mComponentName.setBackgroundColor(getResources().getColor(android.R.color.transparent));
通过在XML中添加以下代码,您可以设置任何布局、任何视图或任何组件的背景透明:
android:background="@android:color/transparent"
尝试使用下面的代码。它将帮助你完全或更多。
A .xml file designed to use this code to set background color: android:background="#000000" or android:background="#FFFFFF" Or you can set it programmatically as well. Also you can use this code programmatically: image.setBackgroundDrawable(getResources().getDrawable( R.drawable.llabackground)); Also this code for setting the background color as well programmatically: image.setBackgroundColor(Color.parseColor("#FFFFFF")); This code for the same programmatically: image.setBackgroundColor(getResources().getColor(Color.WHITE));
颜色取决于你想要使用哪种颜色的透明。主要使用白色或#FFFFFF颜色。
关于R.drawable.llabackground:这一行代码是为你的背景风格,就像一些特殊的或不同的东西为你的目的。你也可以用这个。
如果您想增加20%或30%的透明度,您应该在十六进制代码中预先添加两个字符,如CC。
Note
android:background="#CCFF0088
其中CC是alpha值,FF是红色因子,00是绿色因子,88是蓝色因子。
一些不透明代码:
十六进制不透明度值
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.
除了哈沙德提到的:
两个十六进制字符可以追加到任何十六进制颜色代码。8位十六进制颜色代码中的前两个字符表示其在Android中的不透明度。
两个十六进制字符,取值范围为00 ~ FF。例如,
普通不透明黑六角- "#000000" 全透明- "#00000000" 完全不透明- "#FF000000" 50%透明- "#7F000000"
这样你就可以改变任何颜色到任何级别的透明度。
从百分比中找到十六进制前缀:
百分数除以100,再乘以255,得到小数。这里把十进制转换成十六进制。
例如,对于50%,50/100 * 255 = 127。使用该链接,我们得到了十六进制值7F。
Android:如何创建透明或不透明的背景