Предотвратить мягкий ввод от появления - PullRequest
1 голос
/ 27 марта 2019

У меня есть планшетный сканер Bluetooth, подключенный к планшету Android.Аппаратная клавиатура отключена в настройках Android.Это позволяет мне сканировать штрих-коды и использовать программную клавиатуру для набора текста.

Когда я сканирую штрих-код, моя деятельность ловит все клавиши, как и ожидалось.Но появляется программная клавиатура.

Как предотвратить появление программной клавиатуры?

Я пробовал следующее:

android:windowSoftInputMode=stateHidden

или

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

(или stateAlwaysHidden),

но ничего не получалось.Когда приложение ловит аппаратную клавишу, появляется программная клавиатура.

Ответы [ 3 ]

1 голос
/ 27 марта 2019

В манифесте, пожалуйста, попробуйте следующее

<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".Main"
          android:label="@string/app_name"
          android:windowSoftInputMode="stateHidden">
0 голосов
/ 27 марта 2019

Это работает для меня:

public static void hideSoftInput(Activity activity) {
    View view = activity.getCurrentFocus();
    if (view == null) view = new View(activity);
    InputMethodManager imm = (InputMethodManager) activity
            .getSystemService(Activity.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
0 голосов
/ 27 марта 2019

, пожалуйста, добавьте этот атрибут к вашему activity в манифесте:

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