最近做一个app,当点击edittext的时候,同时弹出来popuwindow和软键盘。这时候就出现问题了,popuwindow能够点击,而键盘没反应。后来研究发现,在自定义popuwindow的时候,设置了setfouse为true,这样就一直活得焦点,所以在这里我们不要设置。
当然 如果popuwindow中含有edittext,点击它要想把控件弹出,则要设置setfouse为true。
setContentView(R.layout.main); //得到弹出菜单的view,login_setting_popup是弹出菜单的布局文件 View view = getLayoutInflater().inflate(R.layout.login_setting_popup, null); //初始化弹出菜单 popWindow = new PopupWindow(view, WindowManager.LayoutParams.FILL_PARENT,WindowManager.LayoutParams.WRAP_CONTENT,false); //设置可以获取焦点,否则弹出菜单中的EditText是无法获取输入的 popWindow.setFocusable(true); //这句是为了防止弹出菜单获取焦点之后,点击activity的其他组件没有响应 popWindow.setBackgroundDrawable(new BitmapDrawable()); //防止虚拟软键盘被弹出菜单遮住 popWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); //在底部显示 popWindow.showAtLocation(this,Gravity.BOTTOM, 0, 0);