Android改变屏幕透明度
2019-02-19 本文已影响0人
程序员小华
可以通过在代码中调用以下方法修改屏幕透明度:
/**
* 设置添加屏幕的背景透明度
*
* @param bgAlpha 屏幕透明度0.0-1.0 1表示完全不透明
*/
public void setBackgroundAlpha(float bgAlpha) {
WindowManager.LayoutParams lp = this.getWindow().getAttributes();
lp.alpha = bgAlpha;
if (bgAlpha == 1) {
this.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);//不移除该Flag的话,在有视频的页面上的视频会出现黑屏的bug
} else {
this.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);//此行代码主要是解决在华为手机上半透明效果无效的bug
}
this.getWindow().setAttributes(lp);
}
展示效果如下:
