设置popWindow出现时,背景后面变暗

来源:互联网 发布:js判断对象是否为null 编辑:程序博客网 时间:2024/05/29 19:28
if (null == changePopupWindow) {            LayoutInflater inflater = LayoutInflater.from(this);            View popWindow = inflater.inflate(R.layout.pop_custm_recept_arreas,                    null);            arreasGroup = (RadioGroup) popWindow                    .findViewById(R.id.pop_arreas_group);            arreasGroup.setOnCheckedChangeListener(this);            changePopupWindow = new PopupWindow(popWindow,                    ViewGroup.LayoutParams.WRAP_CONTENT,                    ViewGroup.LayoutParams.WRAP_CONTENT);            // 设置popwindow可触摸            changePopupWindow.setFocusable(false);            // 设置pop外的区域是否可触摸            changePopupWindow.setOutsideTouchable(true);            // 实例化一个ColorDrawable颜色为半透明            ColorDrawable dw = new ColorDrawable(0xb0000000);            // 设置pop弹出窗体的背景            changePopupWindow.setBackgroundDrawable(dw);            backgroundAlpaha(CustomerReceptDestActivity.this, 0.5f);            // 设置popWindow的显示和消失动画            changePopupWindow.setAnimationStyle(R.style.mypopup_anim_style);            // 当点击取消的时候,pw消失            popWindow.findViewById(R.id.pop_custom_pay_cancel_submit)                    .setOnClickListener(new OnClickListener() {                        @Override                        public void onClick(View arg0) {                            changePopupWindow.dismiss();                        }                    });            changePopupWindow.setOnDismissListener(new OnDismissListener() {                @Override                public void onDismiss() {                    backgroundAlpaha(CustomerReceptDestActivity.this, 1.0f);                }            });        }        ColorDrawable dw = new ColorDrawable(0xb0000000);        changePopupWindow.setBackgroundDrawable(dw);        backgroundAlpaha(CustomerReceptDestActivity.this, 0.5f);        changePopupWindow.showAtLocation(mainLayout, Gravity.CENTER, 0, 0);    }    /**     * 设置添加屏幕的背景透明度     * **/    public void backgroundAlpaha(Activity context, float bgAlpha) {        WindowManager.LayoutParams lp = context.getWindow().getAttributes();        lp.alpha = bgAlpha;        context.getWindow()                .addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);        context.getWindow().setAttributes(lp);    }
0 0
原创粉丝点击