原文 : 关于带有EditText的自定义AlertDialog,不能弹出软件盘的解决方法

 

mDialog = new AlertDialog.Builder(context,
                R.style.AlertDialog).create();
        mDialog .show();
        mDialog .getWindow().setContentView(layout);

原先的代码是这样的,但是运行后发现当弹出对话框的时候点击edittext无法弹出软键盘,但是这样写又能弹出软键盘:

 

mDialog = new AlertDialog.Builder(context,
                R.style.AlertDialog).create();
     mDialog.setView(layout); mDialog .show();

又可以弹出软键盘,可是这样会有黑色的边框不是很美观,看了上面那个仁兄的文章后,在前面那段代码后面加上:

mAddFriendAlertDialog.getWindow().clearFlags(
                WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);

就完美解决了!!!