2

我们正在尝试为 Android 应用程序构建软键盘。要在键盘上显示的字符是亚洲语言字符。

任何指针都会有所帮助。

4

5 回答 5

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)

如果不是,那么您唯一的解决方案是使用图标:键盘字符字体在 android KeyboardView.java 源代码(方法onBufferDraw())中硬编码,默认为Typeface.DEFAULT_BOLD

于 2011-09-12T15:09:19.473 回答
0

你读过教程吗?http://developer.android.com/resources/articles/creating-input-method.html

于 2010-09-16T16:21:01.613 回答
0

我在 Android 方面没有经验,但在 Java ME 方面更多。在移动设备和台式机的情况下,unicode 字符不可能完全按照要求呈现,因为它是可靠的字体。用于渲染文本的字体必须包含所述字符代码,否则?将显示一个或黑色矩形。您最好的解决方案似乎是图像字体(您当前使用的图标)。

于 2010-09-16T20:11:02.437 回答
0

我还在开发软键盘并使用 hashmap 将孟加拉字符与代码映射,字体使我能够将孟加拉字体用于候选视图,但键盘键没有运气(它需要通过生根在系统中安装字体),仍然遭受复杂的痛苦字体渲染,字形显示为断字符,目前使用 SQLite 数据库进行预测,如果您知道如何使用 .dict 进行预测,请告诉我:)。

于 2012-01-30T10:11:32.737 回答
0

我们最终使用了按钮图标。这似乎是最直接的方式。

于 2012-08-02T21:42:02.060 回答