我想写一个自定义键盘,应该可以在所有运行安卓4.0和更高版本的设备上工作。所以一开始我在网上搜索,但没有找到任何关于这方面的东西。那么,我该如何创建一款取代安卓普通键盘的应用呢?
我想知道的是:
,
,
发布于 2013-01-12 03:06:40
所以,当我在Swype上工作的时候,我做了大约两年。您不需要根目录,只需要实现一个InputMethodService即可。您可以从大多数文本框中获取文本,但不是所有文本框(并非所有编辑字段都正确地实现了各自的API)。特别是输入类型为INPUT_TYPE_NULL的任何东西都不能很好地工作)。要获取文本,您可以调用inputConnection.getExtractedText
请注意- API很糟糕,应用程序在使用它时时好时坏。一个基本的键盘很简单,但尝试做任何复杂的事情都会花费大量的时间。在大键盘上花费了大量的工时
发布于 2013-01-12 02:48:27
所以我首先在网上搜索了一下,但没有找到任何关于这方面的东西
有关创建输入法的内容,请参阅互联网上的the Android developer documentation。
你们有没有样本码?
如果您从SDK Manager下载了示例代码,则在SDK安装的samples/目录中有一个示例。查找SoftKeyboard。
我需要根用户才能做到这一点吗?
不是的。
它背后的结构是什么?(这只是服务的常规活动吗??)
发布于 2015-05-15 14:26:10
下面是一个很好的教程:
http://code.tutsplus.com/tutorials/create-a-custom-keyboard-on-android--cms-22615
不需要,root用户不需要执行此操作。
您需要使用inputMethodService,请参阅documentation。
root:否
可以在键盘上读出输入框吗?
是的,这是可能的。
InputConnection ic = getCurrentInputConnection();
String currentText = ic.getExtractedText(new ExtractedTextRequest(), 0).text;https://stackoverflow.com/questions/14284664
复制相似问题