我已经扩展了AlertDialog类,以在屏幕底部创建一个弹出视图,就像应用程序内用户的一点通知一样。为此,我修改了对话框的一些Window属性。以下是示例代码:
WindowManager.LayoutParams win = getWindow().getAttributes();
win.dimAmount = 0.0F;
win.flags = WindowManager.LayoutParams.FLAG_DIM_BEHIND |
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
win.height = LayoutParams.WRAP_CONTENT;
win.width = LayoutParams.MATCH_PARENT;
win.gravity = Gravity.BOTTOM;
win.windowAnimations = R.style.PopUpAnimation;
getWindow().setAttributes((android.view.WindowManager.LayoutParams) win);
然而,当弹出软键盘时,弹出窗口仍然位于键盘顶部。如何使对话框位于软键盘后面,或者如何检测键盘何时在屏幕上可见?