1:实现PopupWindow的显示
shareWindow = new PopupWindow(cw, LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
shareWindow.setFocusable(true);//点击空白区域关闭
shareWindow.setTouchable(true);
shareWindow.setOutsideTouchable(true);
shareWindow.setAnimationStyle(R.style.take_photo_anim);// 设置弹出窗体显示时的动画,从底部向上弹出
shareWindow.showAtLocation(parentView.getRootView(), Gravity.BOTTOM, 0, 0);//设置从底部进行展示
2:设置背景的透明度
/**
* 设置透明度
* @param alpath
*/
public void setAlpath(float alpath) {
WindowManager.LayoutParams params = ((Activity) context).getWindow().getAttributes();
params.alpha = alpath;
((Activity) context).getWindow().setAttributes(params);
}
3:问题:
3_1:PopupWindow按照上面设置后,点击空白区域,PopupWindow消失,但是背景的颜色还是存在问题
4:解决
4_1:设置PopuWindow的监听事件
/**
* 设置点击其他空白区域弹框关闭的监听
*/
shareWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
@Override
public void onDismiss() {
setAlpath(1f);
}
});