Как скрыть клавиатуру при отображении диалогов?

У меня есть собственный диалог с EditText в нем. Когда появляется диалоговое окно, фокус находится на EditText, и отображается программная клавиатура. Как этого избежать? Я старался:

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

а также

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edittext.getWindowToken(), 0);

но они не работают для меня. Я думаю, что они не работают для диалога.

2 ответа

Решение

Вы пробовали это? Я проверил это. Это работает.

менять

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

к

dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

Перейдите к XML-макету и дойдите до основного макета и поместите следующее

 android:focusable="true"
 android:focusableInTouchMode="true"
Другие вопросы по тегам