我已经尝试过:
mImageview.setBackgroundResource(R.color.trans);
其中
trans
→<color name="trans">#00000000 </color>
。#1 楼
在XML中,将Background
属性设置为任何颜色,White(#FFFFFF)
阴影或Black(#000000)
阴影。如果要透明,只需在实际的哈希码前加上80:#80000000
,这会将您想要的任何颜色更改为透明的颜色。。::
评论
@Harshad:是否可以使用View.setBackgroundResource(R.drawable.something)将背景图像设置为40%的透明度?
–路易斯·弗洛里特(Luis A. Florit)
2013年1月14日在2:21
@ LuisA.Florit我找到了此链接,您需要在其中乘以0.4(40/100)至RGB值。不知道这是否有帮助,但是您可以尝试一下。 forums.esri.com/Thread.asp?c=93&f=1730&t=223940
– Harshad
13年1月14日在12:30
@Harshad:对不起,我不明白你的回答。我没有任何RGB值,但是TextView的背景图像是我想要的,例如50%透明。但是,无论如何,我在stackoverflow中找到了答案:View.getBackground()。setAlpha(50)。再简单不过了吧? :o)无论如何,谢谢您的帮助!
–路易斯·弗洛里特(Luis A. Florit)
13年1月14日在22:32
如果您在实际哈希码之前添加01到99之间的任何数字,它将为您提供透明度。例如:透明度较高的黑色-#10000000透明度较低的黑色-#99000000
– AnhSirk Dasarp
13年2月6日在7:12
@AnhSirkDasarp不仅从01到99,由于其余数字也是十六进制,因此您可以输入从00到ff的任何值。对于百分之五十的透明度,您应该输入80而不是50,对于其他透明度,您需要执行一些基本计算...
– Nemanja Kovacevic
13年2月18日在11:29
#2 楼
您可以通过在XML中添加以下代码来设置任何布局,任何视图或任何组件的背景透明:android:background="@android:color/transparent"
评论
我在较旧版本的Android上遇到了一个问题,该问题无法将#ff000000视为纯透明。使用此修复它。
–loeschg
13年3月15日在15:05
可能是因为#FF 00 00 00 = 100%黑色。
– Derk-Jan
2013年9月9日20:30在
@Ioeschg前2个字母用于alpha通道。 #00xxxxxx将是透明的,而x是您想要的任何十六进制值。
–user1032613
13-10-23在15:29
如果有人感兴趣,以编程方式进行的等效操作是Android.Resource.Color.Transparent :)
–leone boaventura
14-10-23在9:01
@undroid尝试android:background =“#00ffffff”
– ban-geoengineering
2015年6月11日14:50在
#3 楼
除了Harshad提到的内容:两个十六进制字符可以附加到任何十六进制颜色代码中。 8位十六进制颜色代码中的前两个字符表示其在Android中的不透明度。
两个十六进制字符的范围从00到FF。例如,
普通不透明黑色十六进制-“#000000”
完全不透明-“#FF000000”
50%透明-“#7F000000”
通过这种方式,您可以将任何颜色更改为任何级别的透明度。
从百分比中查找十六进制前缀:
将百分比数字除以100,再乘以255,即可得到十进制值。在此处将十进制转换为十六进制。
例如,对于50%,50/100 * 255 =127。使用链接,我们得到十六进制值7F。
来源:Android :如何创建透明或不透明背景
评论
实际上,完美的50%透明度是7F,而不是80;)
– shinyuX
14年4月30日在16:32
#4 楼
如果要增加20%或30%的透明度,则应在十六进制代码之前附加两个字符,例如CC。注意
XML中的
android:background="#CCFF0088"
,CC是字母值,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.
#5 楼
对黑色使用下面的代码:<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
#6 楼
已经有一个预定义的常数。使用Color.TRANSPARENT
。评论
使用常量应该是最好/最简单的方法!但是在这种情况下,Color.TRANSPARENT的值设置为0x00000000(而不是预期的完全不透明的0xFF000000),因此,根据您的操作方式,此常数可能并不能真正帮助实现透明度!仍然推荐常数为+1!
–
2015年2月5日在10:13
#7 楼
Android中已经内置了一个透明文件:R.color.transparent。 http://developer.android.com/reference/android/R.color.html#transparent但是我想您可能想使放置在WebView中的图像背景透明,例如,使用透明的PNG而不是ImageView背景。如果实际图像完全不透明,则无法通过它查看ImageView背景。
评论
图像是透明的..它没有任何背景..我也尝试过设置图像视图背景,如您说的。.但是它没有用...请帮助。
– Mudit
09年10月1日在10:53
您是否可以发布更多详细信息,例如指向所使用图像的链接以及所使用的代码和布局?
–复杂度
09年10月1日在11:18
#8 楼
如果您希望在代码中使用它,只需:mComponentName.setBackgroundColor(Color.parseColor("#80000000"));
#9 楼
试试这个代码:)这是一个完全透明的十六进制代码-“#00000000”
#10 楼
在您的XML文件中,设置属性“ Alpha”,例如
android:alpha="0.0" // for transparent
android:alpha="1.0" // for opaque
您可以将0.0到1.0之间的任何值指定为十进制应用所需的透明度。例如,0.5透明度是禁用组件的理想选择
#11 楼
或者,也可以使用以下代码解析资源ID: mComponentName.setBackgroundColor(getResources().getColor(android.R.color.transparent));
#12 楼
对于仍然面临此问题的人,您可以尝试以下element.getBackground().setAlpha(0);
评论
我得到一个NullPointerException:尝试在空对象引用上调用虚拟方法'void android.graphics.drawable.Drawable.setAlpha(int)'
– IgorGanapolsky
2015年9月8日在17:56
@IgorGanapolsky:尝试观察您的元素是否为空对象
–MRSuicideSheep
2015年9月9日在2:48
#13 楼
一种更简单的方法:mComponentName.setBackgroundResource(android.R.color.transparent);
#14 楼
使用以下命令获得完全透明:#00000000
当我尝试使用#80000000时,得到了黑色的不需要的透明覆盖层。尝试更改前两位数字;它可以控制透明度,例如
#00000000
#10000000
#20000000
#30000000
评论
透明深色上的完美色彩
–纳吉(Najib Ahmed Puthawala)
2015年9月11日10:40在
#15 楼
在Android Studio中,使用内置工具调整颜色和不透明度非常简单:评论
只需单击它。 @彼得·莫滕森
–Jayakrishnan
17年5月1日下午5:03
#16 楼
我遇到的另一个工作选项是设置android:background="@null"
#17 楼
您也可以使用View.setAlpha(float)
来精确地更改可见性。0将是透明的,1是完全可见的。 ;)
评论
这会更改视图的Alpha,而不是背景!
– IgorGanapolsky
2015年9月8日于17:57
这样,整个视图将是透明的,其中包括内容/图片,您设置的Alpha在这种情况下是错误的。用户希望保持图像的透明度,而不是将图像更改为透明。
– Haroun Hajem
20年1月17日在23:10
#18 楼
尝试使用以下代码。它会为您提供更多或更多的帮助。.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
:此代码行适用于您的背景样式,例如特殊或不同的用途。您也可以使用它。#19 楼
如果使用可绘制的XML图像,则可以使其透明,如下图所示,也可以使用颜色代码:<color name="black">#99000000</color>
#20 楼
带有透明度信息的颜色定义可以采用#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
#21 楼
ImageView.setBackground(R.drawable.my_background);
ImageView.setBackgroundResource(R.color.colorPrimary);
ImageView.getImageAlpha();
ImageView.setAlpha(125); // transparency
评论
尽管此代码可能有助于解决问题,但并未解释为什么和/或如何回答问题。提供这种额外的环境将大大提高其长期价值。请编辑您的答案以添加解释,包括适用的限制和假设。
– Toby Speight
16年11月3日在22:19
#22 楼
尝试以下操作:#aa000000
对于透明度000000 =黑色,可以将这六个数字更改为所需的颜色。
评论
你要在六进制颜色前使用aa的资源是什么
– Mina Fawzy
15年11月12日在11:26
#23 楼
在xml中@android:color/transparent
在代码中
mComponentName.setBackgroundResource(android.R.color.transparent);
评论
这可以为您提供帮助:stackoverflow.com/questions/5445085 / ...