Android底部彈出PopupWindow被選單欄遮擋問題以及窗體亮度設定
阿新 • • 發佈:2019-01-27
Android手機大多數都有底部選單欄,在我們設定底部彈出popupwindow時會遇到被選單欄遮擋的問題,如下圖(華為P8):
我們只需新增一行程式碼即可解決:
mPopWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
我們在彈出popupwindow時也希望像dialog一樣視窗其他部分變暗,我們可以獲取視窗屬性設定其ALPHA值:
WindowManager.LayoutParams params = getWindow().getAttributes ();
params.alpha = 0.3f;
getWindow().setAttributes(params);
在popupwindow隱藏時,窗體再恢復原來亮度,可以設定popupwindow的隱藏監聽恢復窗體亮度:
mPopWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
@Override
public void onDismiss() {
WindowManager.LayoutParams params = getWindow().getAttributes();
params.alpha = 1f;
getWindow().setAttributes(params);
}
});