android 输入法框架分析
文章平均质量分 84
主要是介绍Android源码中的输入法框架流程,
时光如刀
春去冬来,潮起潮落,人生几何;
夏落秋起,风去风来,岁月无痕
展开
-
Android P输入法框架系统--输入法显示
1、程序焦点获取事件导致输入法显示 从上面可以知道程序获得焦点时,程序端会先间接的调用IMMS的startInput将焦点View绑定到输入法,然后会调用IMMS的windowGainFocus函数,这个函数就可能显示输入法, 是否显示输入法由焦点view的属性决定。过程流程图如下:代码处理逻辑如下://ViewRootImpl.javacase MSG_WINDOW_FOCUS_...原创 2019-04-07 17:54:27 · 1604 阅读 · 0 评论 -
Android P输入法框架系统--view绑定输入法过程
1、概述 IMMS如何处理view绑定输入法事件呢?为了讲解整个绑定过程,我们假设此时输入法service还没启动,这个情况下的输入法绑定是最长的,整个过程经历过如下过程:启动输入法service绑定输入法window的token请求输入法为焦点程序创建一个连接会话将输入法的接口传递回程序client端绑定输入法和焦点view 1-4是和程序相关的,而5是和vie...原创 2019-03-31 16:48:46 · 956 阅读 · 0 评论 -
Android P输入法框架系统--view如何触发绑定
在PC时代,输入法的原始输入来自实体键盘,鼠标,然后输入法将这些事件对应的ASCII码转换为俄文,中文,当然如果是英文是不需要转换,直接发送即可。而在Android系统里,由于输入法dialog永远没法成为焦点window,所以输入法永远没法获取到按键事件,也就是说输入法的输入数据只能来自触摸事件,输入法显示出键盘(大家称之为软键盘),用户点击键盘UI, 然后输入法将触摸事件所在位置的字符...原创 2019-03-24 17:37:04 · 1093 阅读 · 1 评论