Как скрыть Soft Keyboard на Android после нажатия TextView (который установлен на фокус)? - PullRequest
0 голосов
/ 23 мая 2018

В продолжение ответа, данного в Android setError ("error") не работает в Textview После применения решения, т. Е. Изменения текстового представления на фокусируемое, при нажатии этого текстового представления появляется всплывающая клавиатура.Как это скрыть.

PS Я попробовал onFocusChangeListener и onTouchListener

Я хочу знать , где вызывать этот метод скрытия клавиатуры , как я пытался это сделатьно это не решает проблему;

    mEndTimeView.setOnClickListener(v -> {
        InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
        if(ViewUtils.isKeyboardShown(mEndTimeView.getRootView())){
            imm.hideSoftInputFromWindow(mEndTimeView.getWindowToken(), 0);
        }
        showEndTimePicker();
    });

Ответы [ 2 ]

0 голосов
/ 26 мая 2018
public static void hideKeyboard(Activity activity) {
View view = activity.findViewById(android.R.id.content);
if (view != null) {
    InputMethodManager imm = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}  

Вызовите этот метод нажатием кнопки.

0 голосов
/ 23 мая 2018

Этот метод необходим для скрытия программной клавиатуры.

public void closeKeyboard() {
    View view = this.getCurrentFocus();
    if (view != null) {
        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
    }
}

Вызовите этот метод, чтобы скрыть / закрыть программную клавиатуру.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...