Как реализовать softInput Keyboard в Android без использования XML-декларации? - PullRequest
0 голосов
/ 12 января 2019

У меня очень специфическая проблема. Я знаю, что в большинстве случаев удобно использовать определение XML-макета в Android. Я не использовал XML-файлы, потому что количество кнопок, отображаемых изображений, отображаемых строк и т. Д. Время от времени меняется. Так что я пока не использую макет или любое определение XML.

Эта вещь отлично работала, пока я не хочу использовать программную клавиатуру Android для ввода. Поскольку, как я уже говорил, я не использую макет XML-UI, я хочу программно реализовать Keyboard. До сих пор я попробовал этот отрывок, который нашел во время экспирации.

public void showSoftKeyboard(){
    if(view.requestFocus()){
        InputMethodManager imm =(InputMethodManager) programmPropeterys.context.getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.showSoftInput(view,InputMethodManager.SHOW_IMPLICIT);
    }
}

public void hideSoftKeyboard(){
    InputMethodManager imm =(InputMethodManager) programmPropeterys.context.getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}

Это для отображения и скрытия клавиатуры. Я также создал новый вид в классе, где расположены эти 2 функции.

Определяется как:

    private View view;

В конструкторе:

    this.view = new View(context)

Я подумал, что должен использовать функции с целью, к которому они могут привязаться, или я неправильно понимаю эти фрагменты?

Главный вопрос: могу ли я использовать программную клавиатуру в качестве метода ввода без использования XML вообще?

Если я полностью и ужасно неправ, может кто-нибудь объяснить мне?

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