ソフトキーボードは以下のメソッドで表示できるそうです。
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
しかし、ダイアログの場合は、タイミングが悪いのか思い通りに表示されません。
上記は、Activity の getWindow() メソッドですが、getWindow() メソッドは、Dialog クラスにもあります。こちらの getWindow() メソッドを使うと思い通りに表示されます。
以下は、EditText がフォーカスされたタイミングでソフトキーボードを表示する例です。非同期な OnFocusChangeListener から参照されるので alertDialog は final になります。
private void showDialog() { EditText editText = new EditText(this); final AlertDialog alertDialog = new AlertDialog.Builder(this) .setTitle("Dialog test") .setView(editText) .setPositiveButton("OK", null) .create(); editText.setOnFocusChangeListener(new OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if (hasFocus) { alertDialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE); } } }); alertDialog.show(); }