Как скрыть клавиатуру при отображении диалогов?
У меня есть собственный диалог с 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"