Android dialog透明

来源:互联网 发布:企业网络信息安全制度 编辑:程序博客网 时间:2024/05/16 18:22

Android ui绘制的基础是window,在window里面是decorview,decoreview里面是我们设置的布局。

1. 设置Dialog整体透明

WindowManager.LayoutParams lp=window.getAttributes();lp.alpha=0.2f;  // 透明度,0.0f~1.0f, 1.0f为完全不透明,0.0f时整个dialog不可见window.setAttributes(lp);

2. 设置Dialog周围背景透明度

dialog显示后,周围会显示淡黑色透明的遮罩层,这个透明度可以调整

WindowManager.LayoutParams lp=window.getAttributes();lp.dimAmount=0.2f;  // 遮罩层透明度,0.0f~1.0f, 1.0f为完全不透明,dialog周围都是黑的window.setAttributes(lp);

3. 设置Dialog背景透明

dialog的背景颜色是decorview的颜色,所以设置decorview背景颜色就行了

window.getDecorView().setBackgroundColor(0x00000000); // 设置A通道为0即完全透明