Symbian输入法初探
2010-08-14 00:53:00 来源:WEB开发网闲来无事,看看Symbian怎么开发输入法。帮助的路径如下:
Nokia Symbian ^3 Developer's Library v0.9 > Symbian Guide > Classic UI Guide > Control and animation framework > Using Front End Processor (FEPBASE)
Front End Processors,前端处理,简称FEP,使用户可以输入键盘上没有的字符,对大部分手机而言,FEP意味着可以键入除数字意外所有的东西,典型的FEP被用来处理多键盘输入手写输入以及语音输入。
FEP是是实现了FEP接口的ECOM插件,它主要使用UI控制框架来拦截按键和鼠标的事件,这些事件被按需要处理之后发送给当前的应用程序,应用程序不需要知道当前有FEP存在。
根据平台安全机制的介绍,FEP作为多态的DLL,签名之后,拥有所有任务控制块的能力,他们将被所有应用程序加载。
FEP主要有个5个关键概念:FEP基类,控制输入能力,FEP意识的文本编辑,前后台观察者以及焦点观察者。
FEP基类名叫CCoeFep,你的FEP需要实现这个抽象基类,一个典型的FEP,经常被实现为拥有一个窗口(获得输入事件的标准方法),UI控制框架使用控件堆栈来决定哪个控件接受按键消息。FEP在控件堆栈中拥有高权限,所有它能第一个获得按键事件。
窗口服务器让FEP中的窗口漂浮在其他应用程序的窗口之上,这样,FEP就有了一个视觉展示。
控制输入,FEP必须能发现第三方控件支持的输入能力,以相应地切换为相应的输入,比如控件只支持英文输入,或者只支持密码输入。或者都支持。控件的输入能力由TCoeinputCapabilities类提供。
文本框的输入法整合能力,文本框如果实现MCoeFepAwareTextEditor的话,它就支持输入法的整合能力,整合的意思是,文本框能意识到输入法的存在,对输入法的显示进行就地显示,Symbian提供的大多数输入法控件都支持这个功能。
前后台监听者:MCoeForegroundObserver.
焦点监听者:MCoeFocusObserver.
赞助商链接