首页 > 技术文章 > Android 开发 将window变暗

guanxinjing 2019-02-21 14:24 原文

前言

  在创建弹窗功能时,一般有需求将背景的window界面变暗.下面两组代码就实现了变暗与恢复的功能.

变暗

public void startDark(){
        WindowManager.LayoutParams params= mActivity.getWindow().getAttributes();
        params.alpha=0.7f;
        mActivity.getWindow().setAttributes(params);
    }

讲解一下:

1.首先我们需要获取activity的window的 WindowManager.LayoutParams ,所以关键代码是 getAttributes();

2.然后在配置透明度 params.alpha=0.7f;

3.最后设置回去

恢复

public void finishDark(){
        WindowManager.LayoutParams params= mActivity.getWindow().getAttributes();
        params.alpha=1f;
        mActivity.getWindow().setAttributes(params);

    }

 

推荐阅读