【发布时间】:2012-09-04 03:40:23
【问题描述】:
我正在尝试制作一个半透明的对话框,以便您可以在游戏开始之前在后台看到游戏。
我已经看过这篇关于如何使其透明的文章,但没有关于半透明或者如果可能的话。
我想要的有点像他提供的图片,但解决方案给出的是对话框的背景完全消失了。
非常感谢!
【问题讨论】:
我正在尝试制作一个半透明的对话框,以便您可以在游戏开始之前在后台看到游戏。
我已经看过这篇关于如何使其透明的文章,但没有关于半透明或者如果可能的话。
我想要的有点像他提供的图片,但解决方案给出的是对话框的背景完全消失了。
非常感谢!
【问题讨论】:
您可以继续使用android dialog transparent提供的代码。
在colors.xml中创建你想要的背景颜色,例如:
<color name="translucent_black">#80000000</color>
并将对话框设置为 translucent_black :
mDialog.getWindow().setBackgroundDrawableResource(R.color.translucent_black);
注意:alpha 通道由颜色资源上传递的前两位数字表示。在示例中,我将 alpha 设置为“80”。你可以在Android Color阅读更多关于android颜色的信息。
【讨论】:
将背景颜色设置为#AARRGGBB,其中 AA 是 Alpha 通道。 例如,您可以使用 #00000000 作为颜色或短方法: #ARGB 所以这将是 #0000 使用简写符号,每个值只使用两次,其中 #264C 与 #226644CC 相同 See also Android Color for more.
【讨论】:
如果您想使用部分透明度,这将有助于您设置颜色代码。
2 个十六进制字符可以附加到任何十六进制颜色代码。 8 位十六进制颜色代码中的前 2 个字符表示其在 Android 中的不透明度。
2 个十六进制字符的范围可以从 00 到 FF。例如-
通过这种方式,您可以将任何颜色更改为任何级别的透明度。
使用它从百分比中查找十六进制前缀-
将 % 除以 100 并乘以 255 得到十进制值。将十进制转换为十六进制here 例如。对于 50%,50/100 * 255 = 128。使用链接我们得到十六进制值 80。
来源-http://zaman91.wordpress.com/2010/03/22/android-how-to-create-transparent-or-opeque-background/
【讨论】: