欢迎来到天天文库
浏览记录
ID:44811745
大小:330.00 KB
页数:22页
时间:2019-10-29
《MTK输入法介绍》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、技术文档 目录1概述42目的43参考文档44T9输入法文件说明44.1H文件44.2C文件44.3T9层次结构54.4输入法的调用流程54.4.1输入法的初始化:64.4.2进入需要输入法的短消息界面74.4.3引擎输出的buffer及一些辅助信息84.4.4相关的显示区域及状态114.5反查码表135语言种类的选择136字库的选择与添加136.1加入库文件136.2建立相关的文件夹146.3ADS编译需用到的一些设置文件146.4设置按键处理函数146.5候选窗口156.6输入法图标156.7输入法菜
2、单156.8改变EMS默认的输入法166.9其他166.10CommonScreens.c176.11EditorPen.c176.12Wui_ems_categories.c186.13Wui_inputs.c:226.14资源文件226.15其他注意的问题:237问题与讨论23 技术文档 1概述该文档是输入法的技术说明文档2目的供内部人员开发使用3参考文档 MTK6226代码实现4T9输入法文件说明中文输入方式:中文输入方式即用手机在编写短信息或是电话簿等项目中用到的输入方式。T9:T9输入法
3、全名为智能输入法,字库容量九千多字,支持十多种语言,包括欧洲及中文繁体、简体、香港常用字等。4.1H文件t9main.h,t9definition.h,t9.h,t9api.h,t9awapi.h,t9ccapi.h,t9cgen.h,t9env.h,t9gen.h,t9lang.h,t9ver.h其中t9main.h,t9definition.h为MMIFrameWork需要用到的头文件,而t9.h,t9api.h,t9awapi.h,t9ccapi.h,t9cgen.h,t9env.h,t9gen.
4、h,t9lang.h,t9ver.h为引擎API层需要用到的头文件。4.2C文件t9lang.c,t9main.c 技术文档 4.3T9层次结构T9采用了三层结构引擎层根据输入键值搜索数据。引擎API封装层主要是对T9引擎API的封装,MMI层只要往这一层输入键值,然后该层直接提供可以显示的数据。输入:用户输入的一些按键信息。输出:引擎输出的一些buffer及一些辅助信息。显示:根据引擎输出的一些buffer及辅助信息显示出来。4.4输入法的调用流程输入法模块调用流程图如下: 技术文档 4.4.
5、1输入法的初始化:在文件MMITask.c中的函数voidInitIME(void){…..InitInputMethod();//t9输入法的初始化}进行了输入法的初始化.主要是初始化输入法的模式(全局变量),当前模式设置.IMERES.h定义了一个数据结构定义输入法的模式所涵盖的细节typedefstruct_IMEModeDetails{SUPPORT_INPUT_MODESIME_Mode_ID;SUPPORT_INPUT_TYPESIME_Type_ID;U16Common_Screen_St
6、ringID;U16Prefered_IMEStringID;MMI_BOOLEnglish_Only_Flag;}sIMEModeDetails;在IMERES.c 技术文档 定义了一个全局的输入法模式数组,如果要增加或者删减相关的模式,在此数组下修改.constsIMEModeDetailsmtk_gIMEModeArray[]={…..}4.4.2进入需要输入法的短消息界面4.4.2.1短消息编写短消息时会进入一个句柄绑定函数(SMSMoMtGuiInterface.c)voidHighlig
7、htWMessageHandler(void){….SetLeftSoftkeyFunction(mmi_msg_entry_write_msg,KEY_EVENT_UP);…..}voidmmi_msg_entry_write_msg(void){……ShowCategory28Screen(…)……}voidShowCategory28Screen(…){…..//如果是非触摸屏//关联*键,用于切换特殊字符SetKeyHandler(change_input_mode,KEY_STAR,KEY_E
8、VENT_DOWN);……//注册一个回调函数register_multiline_inputbox_input_callback(handle_category28_input);……//关联#键,用于切换输入模式SetKeyHandler(handle_category28_change_input_mode,KEY_POUND,KEY_EVENT_DOWN);…..//与T9联系起来,关联0—9键change_EMS_inputbox
此文档下载收益归作者所有