Создать KeyboardView по умолчанию клавиатура без определения ключа в файле ресурсов xml
Я создаю объект из класса клавиатуры android (https://developer.android.com/reference/android/inputmethodservice/Keyboard.html ). в моем случае мне просто нужна клавиатура по умолчанию, никакой пользовательской клавиатуры. Но конструкторам класса Keyboard требуется xml-файл ресурсов, содержащий определение строк и клавиш. Похоже, это только для создания пользовательской клавиатуры.
Мне нужен этот объект класса Keyboard, чтобы использовать его в KeyboardView в пределах Таблица:
keyboard123 = (KeyboardView) Tab2View.findViewById(R.id.keyboard123);
Keyboard k1 = new Keyboard(Tab2View.getContext(), R.xml.qwerty_keyboard);
k1 = new Keyboard(Tab2View.getContext(), com.android.internal.R.id.keyboardView);
keyboard123.setKeyboard(k1);
Приведенный выше код отлично работает, но только если я создам xml-файл "qwerty_keyboard" с определением ключа. Есть ли способ просто получить клавиатуру android по умолчанию и отобразить ее на одной из вкладок в таблице?
1 ответ:
Вы не можете сделать это так, как вы пытаетесь это сделать. Вы не можете сделать клавиатуру по умолчанию в представлении, потому что это отдельное приложение, которое работает само по себе.
Поэтому для того, чтобы достичь того, что вы пытаетесь, вам нужно будет запросить inputmanager, чтобы он появился, когда вы перейдете на вкладку клавиатура, но, честно говоря, у вас будет так много проблем с размером (высотой), что я не буду рекомендовать этот вид дизайна :) просто подумайте об этом, каждый может сделать клавиатуру, и каждый может установить ее, есть много много других вариантов. много клавиатур, и все они имеют разную высоту, но вы можете получить эту высоту и сделать некоторое волшебство...
Другой альтернативой было бы просто сделать свою собственную встроенную клавиатуру (вроде того, что вы уже сделали).

Comments