AlertDialog dlg = new AlertDialog.Builder (this, R.style.dialog).create();
dlg.show();
Window window = dlg.getWindow();
if (window != null) {
window.setGravity(Gravity.CENTER);
window.setContentView(R.layout.edit__dialog_layout);
}
dlg.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);
这样,EditText就可以正常输入了。
主要是这一句:dlg.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);
另外:为了防止弹出输入法时把后面的背景挤变形,可以在Manifest里添加:
android:windowSoftInputMode="adjustPan|stateHidden"