Answers:
在XML中,将该Background
属性设置为任何颜色,White(#FFFFFF)
阴影或Black(#000000)
阴影。如果要透明,则在实际的哈希码前加上80:
#80000000
这会将您想要的任何颜色更改为透明颜色.. :)
View.setBackgroundResource(R.drawable.something)
?
View.getBackground().setAlpha(50)
。再简单不过了吧?:o)无论如何,谢谢您的帮助!
#10000000
黑色- 透明度 较低的黑色 #99000000
通过在XML中添加以下代码,可以将任何布局,任何视图或任何组件的背景设置为透明:
android:background="@android:color/transparent"
android:background="#00ffffff"
除了Harshad提到的内容:
可以在任何十六进制颜色代码后附加两个十六进制字符。8位十六进制颜色代码中的前两个字符表示其在Android中的不透明度。
两个十六进制字符的范围为00到FF。例如,
这样,您可以将任何颜色更改为任何级别的透明度。
要从百分比中查找十六进制前缀:
将百分比数字除以100,再乘以255,即可得到十进制值。在此将十进制转换为十六进制。
例如,对于50%,50/100 * 255 =127。使用链接,我们得到十六进制值7F。
如果要增加20%或30%的透明度,则应在十六进制代码之前附加两个字符,例如CC。
android:background="#CCFF0088"
在XML中
其中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.
将以下代码用于黑色:
<color name="black">#000000</color>
现在,如果要使用不透明度,则可以使用以下代码:
<color name="black">#99000000</color>
下面是不透明度代码:
100%-FF
95%-F2
90%— E6
85%— D9
80%— CC
75%—高炉
70%— B3
65%— A6
60%— 99
55%— 8摄氏度
50%— 80
45%— 73
40%— 66
35%— 59
30%— 4D
25%— 40
20%— 33
15%— 26
10%— 1A
5%— 0天
0%-00
已经有一个预定义的常数。使用Color.TRANSPARENT
。
Color.TRANSPARENT
设置为0x00000000
(而不是预期的完全不透明0xFF000000
),因此,根据您的操作方式,此常数可能实际上并不能帮助实现透明度!仍然推荐常数为+1!
Android中已经内置了一个透明文件:R.color.transparent。http://developer.android.com/reference/android/R.color.html#transparent
但是我认为您可能希望将要放入WebView中的图像的背景变得透明,例如,使用透明的PNG而不是ImageView背景。如果实际图像完全不透明,则无法通过它看到ImageView背景。
如果您希望在代码中使用它,只需:
mComponentName.setBackgroundColor(Color.parseColor("#80000000"));
或者,或者,使用以下代码解析资源ID:
mComponentName.setBackgroundColor(getResources().getColor(android.R.color.transparent));
在您的XML文件中,设置属性“ Alpha”
如
android:alpha="0.0" // for transparent
android:alpha="1.0" // for opaque
您可以使用介于十进制的0.0到1.0之间的任何值来应用所需的透明度。例如,0.5透明度是禁用组件的理想选择
对于仍然面临此问题的人,您可以尝试
element.getBackground().setAlpha(0);
NullPointerException: Attempt to invoke virtual method 'void android.graphics.drawable.Drawable.setAlpha(int)' on a null object reference
element
是否为空对象
使用以下命令可确保完全透明:
#00000000
当我尝试使用#80000000时,得到了黑色的不需要的透明覆盖层。尝试更改前两位数字;它控制透明度,例如
#00000000
#10000000
#20000000
#30000000
一种更简单的方法:
mComponentName.setBackgroundResource(android.R.color.transparent);
您还可以使用View.setAlpha(float)
来精确地更改可见性。
0是透明的,1是完全可见的。;)
尝试使用以下代码。它将完全或更多地帮助您。
设计为使用此代码设置背景色的.xml文件:
android:background="#000000"
要么
android:background="#FFFFFF"
或者,您也可以通过编程方式进行设置。
您也可以以编程方式使用此代码:
image.setBackgroundDrawable(getResources().getDrawable(
R.drawable.llabackground));
另外,该代码还可以通过编程方式设置背景色:
image.setBackgroundColor(Color.parseColor("#FFFFFF"));
此代码以编程方式相同:
image.setBackgroundColor(getResources().getColor(Color.WHITE));
颜色取决于您要用于透明的颜色的选择。通常使用白色或#FFFFFF颜色。
关于R.drawable.llabackground
:这行代码适用于您的背景样式,例如一些特殊的或与您目的不同的东西。您也可以使用它。
具有透明度信息的颜色定义可以采用以下形式
#AARRGGBB
要么 #ARGB
。
您也可以使用较短的值来实现完全透明: #0000。
其他值例如:
white grey black
#FFFF #F888 #F000 - full color
#EFFF #E888 #E000
#DFFF #D888 #D000
#CFFF #C888 #C000
#BFFF #B888 #B000
#AFFF #A888 #A000
#9FFF #9888 #9000
#8FFF #8888 #8000
#7FFF #7888 #7000
#6FFF #6888 #6000
#5FFF #5888 #5000
#4FFF #4888 #4000
#3FFF #3888 #3000
#2FFF #2888 #2000
#1FFF #1888 #1000
#0FFF #0888 #0000 - full transparency
ImageView.setBackground(R.drawable.my_background);
ImageView.setBackgroundResource(R.color.colorPrimary);
ImageView.getImageAlpha();
ImageView.setAlpha(125); // transparency