非英语键盘&输入法

时间:2013-03-14 20:50:04

标签: android

我是Android应用程序开发的新手,所以如果我的问题听起来很业余,我很抱歉。我试图在网上搜索我的问题的答案,但我想我可能没有使用正确的术语,因为我想要做的不是新的东西。请帮助我走上正确的道路。

我想创建一个应用程序,其中我的一个页面可以使用不同语言的键盘。该语言不能用英文字母表示,但在Windows等中有可用的字体,因此它是一种已知的语言。我希望用户选择键盘上的字母和要用同一种语言打印到文本框中的字母。接下来,使用用户输入的字母,我想通过数据库搜索该特定字母串,并找到输入行所在的页码。

第1部分: 我想弄清楚我应该在构建键盘时使用哪种方法。我想出的是,我需要创建一个图像按钮表,其中包含每个字符的图像。这是一个好方法还是有更好的方法来做到这一点?

第2部分: 当用户从图像按钮表中选择一个字母时,如何用特定语言打印?我确实在res / values-pa下创建了一个strings.xml(我查看了这个,并且ISO 639-1代码是“pa”)。我不知道该怎么办才能在用户从键盘上选择该语言中的字符?

谢谢。

2 个答案:

答案 0 :(得分:0)

如果您需要创建一个功能齐全的键盘,请查找InputMethodService并从中派生一个类。然后,用户可以将其选为键盘。但是如果你只想让他们用他们的母语输入文本,那么他们需要做的就是选择那个作为他们的语言环境,并且有一个键盘支持手机上安装的语言环境 - 这将是非常不寻常的,你可能错了编码键盘。更不用说一个好的键盘需要大量的工作 - 大型Android键盘上有程序员和语言学家团队。

答案 1 :(得分:0)

首先,您需要在应用中包含该语言的字体。关于包含和使用它们的here有一个很好的教程。

之后,您可以将每个按钮的文本设置为该字体中的一个字符。

然后在每个按钮的onClick()中,执行以下操作:

String letter = clickedButton.getText();
myEditText.setText(myEditText.getText() + letter);

clickedButton是点击的按钮,myEditText是您的EditText