android键盘输入法整体解读(转)

android键盘输入法整体解读(转)


2024年5月11日发(作者:深度ip转换器免费版)

Android键盘整体解读

Android就开放它的IMF(Input Method Framework),让我们能够开发自己的输

入法。而开发输入法最好的参考就是Android自带的Sample-SoftKeyboard,虽然这个

例子仅包含英文和数字输入,但是它本身还算完整和清楚,对我们开始Android开发实战

有很大帮助。

一、IMF简介

一个IMF结构中包含三个主要的部分:

input method manager:管理各部分的交互。它是一个客户端API,存在于各个应

用程序的context中,用来沟通管理所有进程间交互的全局系统服务。

input method(IME):实现一个允许用户生成文本的独立交互模块。系统绑定一个当

前的输入法。使其创建和生成,决定输入法何时隐藏或者显示它的UI。同一时间只能有一

个IME运行。

client application:通过输入法管理器控制输入焦点和IME的状态。一次只能有一个

客户端使用IME。

1、InputManager

由UI控件(View,TextView,EditText等)调用,用来操作输入法。比如,打开,关闭,

切换输入法等。

它是整个输入法框架(IMF)结构的核心API,处理应用程序和当前输入法的交互。可

以通过temService()来获取一个InputMethodManager的实例。

在开发过程中,最基础最重要的就是养成阅读API的习惯。优秀的程序员要养成把自

己关在小黑屋里,断绝与外界的联网和联系,仅仅靠自己电脑中的开发环境和API文档,

以及漂亮女仆送来的每天三顿饭,写出优秀的程序。这个在武侠小说中叫闭关,在软件开

发中叫Clean Room,哈哈。

Android的API文档在:%SDK_ROOM%/docs/reference/,

InputManager类的位

置:%SDK_ROOM%/docs/reference/android/view/inputmethod/InputMethodMa

由于,该类跟本次要讲的Sample关系不大,这里就不详细分析,请各位自行阅读API

doc吧。

2、InputMethodService

包括输入法内部逻辑,键盘布局,选词等,最终把选出的字符通过commitText提交

出来。实现输入法的基础就是名为 InputMethodService的类,比如你要实现一个谷歌输

入法,就是要extends本类。我们接下来要学习的SoftKeyboard Sample也是extends

本类。InputMethodService类的位置在:%SDK_ROOM%/docs/reference

/android/inputmethodservice/


发布者:admin,转转请注明出处:http://www.yc00.com/xitong/1715401349a2612586.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信