我们正在尝试为Android应用构建一个SoftKeyboard。键盘上显示的字符是亚洲语言字符。
任何指针都会有所帮助。
答案 0 :(得分:3)
实际上,它取决于您将使用的字符在Android系统字体中是否受支持(可显示)。
如果,只需使用键盘xml定义中的unicode代码,例如:
<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)
如果它们不是,那么您唯一的解决方案就是使用图标:键盘字符Typeface在Android KeyboardView.java源代码(方法onBufferDraw()
)中进行了硬编码,默认为{{ 1}}
答案 1 :(得分:0)
答案 2 :(得分:0)
我在Android中没有经验,但在Java ME中更多。对于移动设备以及桌面设备,unicode特征码无法完全按照要求进行渲染,因为字体可靠。用于渲染文本的字体必须包含所述字符代码,否则将显示?
或暗矩形。您最好的解决方案似乎是图像字体(您当前使用的图标)。
答案 3 :(得分:0)
我也在使用软键盘并使用hashmap将bangla字符与代码一起映射,字体使我能够使用bangla字体进行候选视图,但是键盘键没有运气(它需要通过rooting在系统中输入字体),仍然从复杂的字体渲染开始,字形显示为破碎的字符,目前使用SQLite数据库进行预测,如果你知道如何使用.dict进行预测请告诉我:)。
答案 4 :(得分:0)
我们最终使用按钮图标。这似乎是最直接的方式。