Softkeyboard с символами Unicode или пользовательским шрифтом
-
03-10-2019 - |
Вопрос
Мы пытаемся построить Softkeyboard для приложения для Android. Персонажи, которые будут показаны на клавиатуре, являются символами азиатских языков.
Любые указатели будут полезны.
Решение 5
Мы закончили использовать кнопки иконки. Кажется, это самый прямой путь.
Другие советы
На самом деле, это зависит от WHER, которые вы будете использовать, поддерживаются (отображаемые) в системном шрифте Android.
Если они, Просто используйте коды Unicode в вашей клавиатуре XML-определение, например:
<Key android:codes="946" android:keyLabel="\u03B2"/>
<Key android:codes="946" android:keyLabel="&946;"/>
<Key android:codes="946" android:keyLabel="β"/>
<!-- Warning, you should use UTF-8 encoding for your project files if you use the third solution -->
Все производят один и тот же ключ с греческим β-символом (Unicode U03B2, десятичный 946)
Если они не, Тогда ваше единственное решение - использовать значки: шрифт символов клавиатуры жестко выполнен в Android KeyboardView.java Исходный код (метод onBufferDraw()
) и по умолчанию Typeface.DEFAULT_BOLD
Вы прочитали учебник? http://developer.android.com/resources/articles/creating-input-method.html.
У меня нет опыта в Android, но гораздо больше в Java Me. В случае мобильных телефонов, а также в настольных компьютерах, для характеристики Unicode невозможно сделать точно так, как это требуется, поскольку он является надежной. Шрифт, используемый для рендеринга текста, должен иметь указанный код чаркора в нем, еще ?
или темный прямоугольник будет отображаться. Ваше лучшее решение кажется шрифтами изображения (значки, которые вы используете в настоящее время).
Я также работаю на Softkeyboard и используя Hashmap для сопоставления символов Bangla с кодами, наверхк позволил мне использовать Bangla шрифт для кандидата, но не повезло с клавишами клавиатуры (ему необходимо скрыть шрифт в системе укоренения), по-прежнему Рендеринг шрифта, Glyphs отображаются как сломанные символы, использующие базу данных SQLite для прогнозирования, если вы знаете, как использовать .dict для прогнозирования, пожалуйста, дайте мне знать :).