適合底部popupwindow彈出時背景設置半透明效果
常量
public static final float POPUP_WINDOW_BG_ALPHA=0.5f;
public static final float POPUP_WINDOW_BG_ALPHA_NOMAL=1f;
public class PopupWindowUtil {
private static Activity act;
public static void addbgAlpha(PopupWindow popupWindow, Activity activity) {
act = activity;
popupWindow.setInputMethodMode(PopupWindow.INPUT_METHOD_NEEDED);
popupWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
//設置
WindowManager.LayoutParams lp = act.getWindow().getAttributes();
lp.alpha = Constants.POPUP_WINDOW_BG_ALPHA;
act.getWindow().setAttributes(lp);
//恢復
popupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
@Override
public void onDismiss() {
WindowManager.LayoutParams lp = act.getWindow().getAttributes();
lp.alpha = Constants.POPUP_WINDOW_BG_ALPHA_NOMAL;
act.getWindow().setAttributes(lp);
}
});
popupWindow.setOutsideTouchable(false);
popupWindow.setFocusable(true);
}
}