android输入法原理
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Android输入法原理
输入法在android中的本质就是一个service,假设用户刚刚启动android,移动焦点首次进入文本编译框时,android便会通知Service开始进行初始化工作。于是便有了以下的一系列动作:
第一个执行的是onCreate方法,该方法继承至Service类,其意义和其他Service是一样的,做了一些非UI方面的初始化,即字符串变量词汇分隔符的初始化;
第二个执行的是onInitializerface,这是进行UI初始化的地方,创建和配置修改以后,都会调用这个方法,示例对Keyboard进行了初始化,从XML文件中读取软键盘信息,封装进Keyboard对象;
第三个执行的是onStrartInput方法,在这里,我们被绑定到了客户端,接收所有关于编译对象的详细信息;
第四个执行的方法是onCreateInputView,在用户输入的区域要显示时,这个方法由框架调用,输入法首次显示时,或者配置信息改变时,该方法就会被执行。在该方法中,对inputview进行初始化:读取布局文件信息,设置onKeyboardActionListener,并初始设置keyboard;
第五个方法是onCreateCandidatesView,在要显示侯选词汇的视图时,由框架调用,和onCreateInputView类似,在这个方法中,对candidateview进行初始化;
第六个方法,也是最后一个方法,即onStartInputView,正在这个方法中,将inputview和当前的keyboard重新关联起来;