2 qq 26556381 qq_26556381 于 2016.03.15 22:46 提问

关于AlertDialog设置背景透明的问题

在setView(view)自定义的view里面,外层linearLayout我设置成透明的了,可是运行起来还是白色的,求解

3个回答

qq_34781711
qq_34781711   2017.07.22 17:13

这个要从style着手

<style name="AlertDialogStyle" parent="@android:style/Theme.Dialog">
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:windowFrame">@null</item>
    <item name="android:backgroundDimEnabled">true</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsTranslucent">true</item>
</style>

    AlertDialog dialog = new AlertDialog.Builder(activity, R.style.AlertDialogStyle).create();
u011249920
u011249920   2016.03.16 17:34

//自定义布局
View layout = getActivity().getLayoutInflater().inflate(R.layout.mydialog,null);
AlertDialog.Builder dialog = new AlertDialog.Builder(DialogActivity.this,AlertDialog.THEME_DEVICE_DEFAULT_DARK);
final AlertDialog dialog = builder.create();
dialog.setView(layout);
//透明
Window window = dialog.getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
lp.alpha = 0.9f;
window.setAttributes(lp);
.......
dialog.show();

qq_26556381
qq_26556381 这种方法我设置过,但有个问题,这样设置之后,我View里面的内容也透明的,但我不想改变里面内容的透明度
2 年多之前 回复
gsw333
gsw333   2016.03.16 18:47

你把view的背景设为透明了,但是可能你这个dialog的背景色是白色,所以你看着不透明,你把dialog的背景色设为透明试试

qq_26556381
qq_26556381 是楼上那种用Window设置dialog的背景色??是的话我试过,但有个问题,这样设置之后,我View里面的内容也透明的,但我不想改变里面内容的透明度
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
android对话框代码中设置背景为透明
//创建背景透明的对话框 AlertDialog.THEME_HOLO_LIGHT AlertDialog.Builder b = new AlertDialog.Builder(myContext.getApplicationContext(), AlertDialog.THEME_HOLO_LIGHT); dialog = b.create(); 网上还有
Android Alertdialog弹出框设置半透明背景
自定义AlertDialog基本步骤: 1.写一个layout布局,使用inflater生成对应view对象 2.新建AlertDialog.Builder对象builder 3.builder设置自定义布局view,从view中获取各控件,设置对应业务逻辑 4.builder.create()生成AlertDialog对象,dialog.show()显示弹窗 以上基础方法中,若想给vi
安卓Dialog实现透明背景
AlertDialog alertDialog = new AlertDialog.Builder(activity).create(); alertDialog.getWindow().setBackgroundDrawable(new ColorDrawable()); alertDialog.show(); alertDialog.setCont
android AlertDialog透明度的设置
Builder builder = new AlertDialog.Builder(this);         builder.setMessage("是否继续进行?");         builder.setTitle("下载提示");         builder.setPositiveButton("继续", new DialogInterface.OnClickListener
AlertDialog 攻略 自定义宽度,改变灰色背景透明度
在android项目中经常会遇到这样的需求,从底部弹出些选项之类的。实现起来有很多种方法,比如:popupwindow,或者干脆定义一个透明灰色背景的view充当cover,然后通过设置要显示内容的visibility属性及辅助动画来达到这样的效果。 但是,灰色的背景总是不能覆盖状态栏。而使用Dialog会达到全屏灰色背景的沉浸体验效果。但是,Dialog使用时宽度一般不是充满屏幕宽度的,我们接下来
Dialog 设置背景完全透明的样式
style name="LoadDialog" parent="android:style/Theme.Dialog"> item name="android:windowBackground">@android:color/transparentitem> item name="android:windowNoTitle">trueitem> item name="and
浅谈自定义不规则背景的对话框,透明背景的对话框dialog定义过程中的注意事项
开发中我们会遇到各种各样的布局,特别是漂亮的dialog,当然这些并不一定是规则的,那我们该怎么定义不规则的dialog呢? 先来看看效果图: 图片分离:          没错就是这三张图片。 现在我们来看看怎么实现这个dialog 需要注意的是: 1、必须是dialog这个类,其他子类无法实现,因为alertdialog之类的有默认的背景 2、不规则
设置alertdialog 透明度
如下: Builder builder = new AlertDialog.Builder(getSherlockActivity()); builder.setTitle(title); builder.setPositiveButton(R.string.rating_continue, new DialogInterface.OnClickListener() {
Android 设置dialog背景全透明无边框
先上图 可以看到dialog浮在背景图上,下面背景图完全可见(背景图原本就是模拟的效果,不要误会,呵呵) 这是怎么设置的呢,关键是设置dialog的style, style的定义如下: @android:color/transparent true true
Android中设置Dialog提示框无背景色--背景无遮罩透明
Anroid自定义Dialog的使用,设置背景透明