Android dialog透明

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/crazyman2010/article/details/77322959

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即完全透明

猜你喜欢

转载自blog.csdn.net/crazyman2010/article/details/77322959