dialog中含有editext,dialog消失以后,系统键盘怎么不消失
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dialog中含有editext,dialog消失以后,系统键盘怎么不消失相关的知识,希望对你有一定的参考价值。
dialog中含有edittext,正常情况下dialog显示的时候系统键盘就会出现,dismiss()的时候,系统键盘就会消失。(本人其他地方代码就是这种情况) 现在遇到了一个比较特殊的,就是先弹出一个popupwindow,该popupwindow有一个button,点击该button,弹出一个dialog,此时系统键盘也会出现,然后我点击让dialog消失,系统键盘却不消失?这是为什么呢。我对比了之前的dialog,发现问题可能出在下面、: 由于我的popupwindow是全屏的,所以它会被系统键盘挤压。是不是由于这个原因呢,如果是,为什么呢,有什么方法解决?求高手解答。
参考技术A 强制隐藏软键盘[mw_shl_code=java,true]private InputMethodManager mInputMethodManager; //定义一个输入法管理对象..........{ mInputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); mInputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0); //这句是强制关闭软键盘}[/mw_shl_code]希望对你有帮助 到eoeandroid网站查看回答详情>>Android番外篇 Dialog点击返回键及屏幕不消失 Dialog系列
一、链式 Dialog 弹窗设置返回键及屏幕不消失
new XXXDialog.Builder(getContext())
//设置“在外部触摸时取消”
.setCanceledOnTouchOutside(false);
//设置为可取消
.setCancelable(false);
.show();
二、常规 Dialog
ProgressDialog progressDialog = new ProgressDialog(getContext());
progressDialog.setTitle(getResources().getString(R.string.update_loading));
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progressDialog.setMax(100);
//设置“在外部触摸时取消”
progressDialog.setCanceledOnTouchOutside(false);
//设置为可取消
progressDialog.setCancelable(false);
Drawable dra = getResources().getDrawable(R.drawable.progersscolor);
progressDialog.setProgressDrawable(dra);
progressDialog.show();
三、Dialog back事件监听
Dialog.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(DialogInterface arg0, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode==KeyEvent.KEYCODE_BACK&&event.getRepeatCount()==0){
return true;
}
else{
return false;
}
}
});
以上是关于dialog中含有editext,dialog消失以后,系统键盘怎么不消失的主要内容,如果未能解决你的问题,请参考以下文章