Вопрос по android – Как включить аппаратную и виртуальную клавиатуры на Android-сэндвич с мороженым

25

Я разрабатываю приложение для управления запасами с Django для компании клиента и хочу использовать сэндвич-таблетку с мороженым в качестве устройства конечного пользователя. Я использую USB-считыватель штрих-кода, который работает нормально.

Моя проблема состоит в том, что после того, как считыватель штрих-кода подключен, он распознается как настоящая клавиатура, и я больше не могу получить доступ к виртуальной клавиатуре. Это большая проблема для меня, потому что я использую устройство считывания штрих-кода только для кодирования кодов EAN13, и мне нужна программная клавиатура рядом с ...

Есть ли способ включить виртуальную и реальную клавиатуры? Мне действительно нужна помощь в этом ....

Спасибо !

Сохраняя для использования позже, мне придется решить ту же проблему через некоторое время :) Kitalda
@kumarSudheer вы уже нашли способ ?? У меня точно такая же проблема, у меня есть андроид-устройство с физическим устройством ввода, и пока физическое устройство подключено, софт-клавиатура всегда скрыта feldeOne
Привет .. У вас есть какое-либо решение для этой проблемы .. Мне тоже нужно вводить штрих-коды вручную и из сканера штрих-кодов тоже .. Но моя версия Android 4.2.2 не позволяет мне открывать экранную клавиатуру, когда подключен сканер штрих-кода. kumar Sudheer

Ваш Ответ

6   ответов
1

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

5

((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)).toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);

Чтобы закрыть программную клавиатуру:

((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(_pay_box_helper.getWindowToken(), 0);
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Lapin-Blanc
18

я нашел решение своей проблемы! (Не знаю, что насчет щедрости сейчас ...)

Когда вы вводите текстовую область (например, в навигаторе), вам просто нужно прикоснуться к значку клавиатуры слева от часов. Там рядом с «Использовать физическую клавиатуру», вы должны выбрать «Нет».

Я обнаружил, что даже в этом случае считыватель штрих-кодов будет по-прежнему активен (да!) И всплывет программная клавиатура!

Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
2

но у меня есть такие же проблемы, которые все здесь опубликовали. После долгих поисков в Интернете я обнаружил клавиатуру в магазине Google Play, которая, кажется, отлично работает для нас (BT Scanner и одновременно хотят SoftKeyboard). Он называется «Клавиатура хакера» Клауса Вейднера.

Просто используйте Hackers Keyboard, перейдите в Настройки - & gt; прокрутите вниз до & quot; Язык & amp; Входной & Quot; - & GT; Клавиатура хакера - & gt; перейти к - & gt; Конфигурации - & gt; Прокрутите вниз до «НАСТРОЙКИ ВХОДНОГО РЕЖИМА» & quot; - & GT; Убедитесь, что & quot; Показать программную клавиатуру всегда & quot; проверено. Клавиатура Softkey остается включенной, даже если сканер подключен через Bluetooth. Работает также при отключении и повторном подключении сканера Bluetooth.

14

сканер штрих-кода определяется как физическая клавиатура. Когда к устройству подключена клавиатура, по умолчанию программная клавиатура отключена. Чтобы включить его, нам нужно отключить аппаратную клавиатуру с помощью:

Settings > Language & Input > Select Input Method

Название опции может отличаться от устройства к устройству. Мы сможем использовать сканер вместе с программной клавиатурой, даже если выключим его.

И НЕТ, в настоящее время нет способа программно достичь этого. Максимум, что мы можем сделать, это обнаружить, когда подключен сканер / клавиатура, и перенаправить пользователя в окно выбора метода ввода, переопределивonConfigurationChanged метод как это:

@Override
public void onConfigurationChanged(Configuration newConfig) {
  super.onConfigurationChanged(newConfig);
  if(newConfig.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_NO) {

    ((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE))
                                  .showInputMethodPicker();
    Toast.makeText(this, "Barcode Scanner detected. Please turn OFF Hardware/Physical keyboard to enable softkeyboard to function.", Toast.LENGTH_LONG).show();
  }
}
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceededstackoverflow.com/a/38467241/2233069
Error: User Rate Limit Exceeded
11

программной клавиатуры:

InputMethodManager imm = (InputMethodManager)getContext().getSystemService(
                                              Context.INPUT_METHOD_SERVICE); 
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded Lapin-Blanc
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded

Похожие вопросы