2012-11-14 63 views
2

enter image description here半透明对话框中的Android

您好,我想做到这一点看我的警告对话框,但不确定我应该怎么做。我知道如何在android中获得透明警报对话框的外观,但我无法找到任何线索来让它变得半透明。请留下一些意见或指导我应该如何开始这样做。非常感谢!

更新: 对不起,我忘记包括实际上我正在使用XML与警报对话框主题,而不是正常的警报对话框。

回答

5

要查看基本活动未变暗:

dialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); 

要使得对话框的背景半透明的,你必须设置背景颜色与阿尔法< 255(参见Color API)。

+0

实际上,我使用xml提醒对话框主题,而不是像通常那样夸大警报对话框。已尝试上述代码并出现错误。猜测只适用于充气警报对话框。无论如何感谢:) – Annabel

+0

好吧,出现什么错误(编辑您的帖子)。其次,您可以继承警报对话框主题以在xml中设置背景颜色。 – Bondax

3

你可以创造自定义对话框,它是指风格:

final Dialog dialog = new Dialog(context,R.style.cust_dialog); 

然后创造价值XML夹名为dialog_style.xml:

<?xml version="1.0" encoding="utf-8"?> 

<resources> 
    <style name="cust_dialog"> 
    <item name="android:windowFrame">@null</item> 
    <item name="android:windowIsFloating">true</item> 
    <item name="android:windowContentOverlay">@null</item> 
    <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item> 
    <item name="android:windowBackground">@color/transparent_color</item> 
    <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item> 
    <item name="android:colorBackgroundCacheHint">@null</item> 
    <item name="android:textSize">30dp</item> 
    <item name="android:gravity">left</item> 
    </style> 
</resources> 

也创造color.xml:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <color name="transparent_color">#00000000</color> 
    </resources> 

由此您将获得半透明对话框,

并且您可以根据需要控制半透明度。

希望能帮到你。

+0

我跟着给出的代码谢谢你,但它变成了透明而不是半透明的... – Annabel

+0

@Annabel如果它解决了你的问题,只是接受它,谢谢 – frozenhill

0

添加此行。

dialog.setBackgroundColor(Color.argb(0,0,0,0);