У меня есть диалог для ввода номера.Когда я вызываю это из действия и затем отклоняю это, мягкая клавиатура скрывается.Но есть проблема, когда я открываю его из другого диалога.В этом случае, когда я щелкаю за пределами диалогового окна, мое диалоговое окно закрывается, но клавиатура все еще видна, даже явный вызов hideSoftKeyboard
не решает проблему.Но когда я закрываю диалог, используя отрицательные или положительные кнопки, клавиатура скрывается.
Вот мой код:
builder.setPositiveButton(R.string.ok_button, (dialog, which) -> {
...
hideSoftKeyboard(editText, requireActivity());
});
builder.setNegativeButton(R.string.cancel_button, (dialog, which) -> hideSoftKeyboard(editText, requireActivity()));
public static void hideSoftKeyboard(View view, Context context) {
if (view != null) {
InputMethodManager inputMethodManager = (InputMethodManager) context.getSystemService(Activity.INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
}