网站大量收购闲置独家精品文档,联系QQ:2885784924

MTK输入法介绍.doc

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MTK输入法介绍

目录 1 概述 4 2 目的 4 3 参考文档 4 4 T9输入法文件说明 4 4.1 H文件 4 4.2 C文件 4 4.3 T9层次结构 5 4.4 输入法的调用流程 5 4.4.1输入法的初始化: 6 4.4.2 进入需要输入法的短消息界面 7 4.4.3 引擎输出的buffer及一些辅助信息 8 4.4.4 相关的显示区域及状态 11 4.5 反查码表 13 5 语言种类的选择 13 6字库的选择与添加 13 6.1 加入库文件 13 6.2 建立相关的文件夹 14 6.3 ADS编译需用到的一些设置文件 14 6.4 设置按键处理函数 14 6.5 候选窗口 15 6.6 输入法图标 15 6.7 输入法菜单 15 6.8 改变EMS默认的输入法 16 6.9 其他 16 6.10 CommonScreens.c 17 6.11 EditorPen.c 17 6.12 Wui_ems_categories.c 18 6.13 Wui_inputs.c: 22 6.14资源文件 22 6.15其他注意的问题: 23 7 问题与讨论 23 概述 该文档是输入法的技术说明文档 目的 供内部人员开发使用 参考文档   MTK 6226代码实现 T9输入法文件说明 中文输入方式: 中文输入方式即用手机在编写短信息或是电话簿等项目中用到的输入方式。 T9: T9输入法全名为智能输入法,字库容量九千多字,支持十多种语言,包括欧洲及中文繁体、简体、香港常用字等。 4.1 H文件 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.h,t9lang.h,t9ver.h为引擎API层需要用到的头文件。 4.2 C文件 t9lang.c,t9main.c T9层次结构 T9采用了三层结构 引擎层根据输入键值搜索数据。引擎API封装层主要是对T9引擎API的封装,MMI层只要往这一层输入键值,然后该层直接提供可以显示的数据。 输入:用户输入的一些按键信息。 输出:引擎输出的一些buffer及一些辅助信息。 显示:根据引擎输出的一些buffer及辅助信息显示出来。 输入法的调用流程 输入法模块调用流程图如下: 4.4.1输入法的初始化: 在文件MMITask.c 中的函数 void InitIME(void) { ….. InitInputMethod();//t9输入法的初始化 } 进行了输入法的初始化.主要是初始化输入法的模式(全局变量),当前模式设置. IMERES.h定义了一个数据结构定义输入法的模式所涵盖的细节 typedef struct _IMEModeDetails { SUPPORT_INPUT_MODES IME_Mode_ID; SUPPORT_INPUT_TYPES IME_Type_ID; U16 Common_Screen_StringID; U16 Prefered_IMEStringID; MMI_BOOL English_Only_Flag; } sIMEModeDetails; 在IMERES.c定义了一个全局的输入法模式数组,如果要增加或者删减相关的模式,在此数组下修改. const sIMEModeDetails mtk_gIMEModeArray[] = { ….. } 进入需要输入法的短消息界面 4.4.2.1 短消息 编写短消息时会进入一个句柄绑定函数(SMSMoMtGuiInterface.c) void HighlightWMessageHandler (void) { …. SetLeftSoftkeyFunction (mmi_msg_entry_write_msg, KEY_EVENT_UP); ….. } void mmi_msg_entry_write_msg (void){ …… ShowCategory28Screen(…) …… } void ShowCategory28Screen(…) { ….. //如果是非触摸屏 //关联*键,用于切换特殊字符 SetKeyHandler(change_input_mode,KEY_STAR,KEY_EVENT_DOWN); …… //注册一个回调函数 register_multiline_inputbox_input_callback(handle_category28_

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档