mtk 面试的几个主要问题.docx
《mtk 面试的几个主要问题.docx》由会员分享,可在线阅读,更多相关《mtk 面试的几个主要问题.docx(11页珍藏版)》请在优知文库上搜索。
1、3.2分析这是窗口建立过程的一个通用处理结构,这里简洁说明一下,每个函数的详细实现和功能请阅读代码。EntryNewScreen初始化建立一个窗口须要的变量和过程,并退出上一个窗口,清除按键处理函数等;SetParcntHandler很重要,设置当前父窗口全局变量的MENUlD,用来定位到当前是在哪一个窗口,后面依据他来在菜单树中查找到高亮的菜单项的MENUID,找到菜单项的MENUID后,通过mmi_frm_get_hi1ite_hd1r(U16menu_id)可以找到菜单项对应的高ghtSoftkeyFunction(GoBackHistory,KEY_EVENT_UP)等函数设置这个窗口
2、要响应哪些按键事务,并设置好相应的处理函数。3. 3高亮函数触发过程RegisterHighlightHand1er把ExecuteCurrHiliteHandler注册成一个通用的高亮处理函数,事实上是给MMI_list_highlight_handler函数指针赋值触发则须要调用MMIist_highlight_handler由于MTK平台支持各种菜单形式,比如纯文本的菜单、带CHECKBoX的、带RADIO的、带一个图片的、带两个图片的、两行的。我们现在只对一种标准菜单进行分析,其他形式的分析方法相同。if(flagWGUI_I.IST_MENU_DISAB1.E_VO1._KEY)re
3、gister_fixed_list_keys_exO;elsercgistcr_fixed_list_keys();来注册按键事务处理函数,其实现过程很简洁:voidregister_fixed_list_keys(void)/*/+1.ocalVariables*/*f三/不*/*CodeBt)dy*/*/SetKeyHandler(fixed_list_goto_previous_itern,KEY_UP_ARROW,KEY_EVENT_DOWN);SetKeyHandler(fixed_list_goto_next_item,KEY_DOlfN_ARRoKKEYEVENT_DOWN);S
4、etKeyHand1er(fixed_1ist_goto_previous_item,KEY_VO1._UP,KEY_EVENUX)WN);SetKeyHandler(fixed_list_goto_next_item,KEY_VO1._DOWN,KEY_EVENT_DOWN);关于如何实现按键事务的响应、按键的处理逻辑,又姑一个专题了。大致包括键盘中断、去抖、键盘映射、检测、进程通信、应用部分按键处理机制等,有机会再写出文档。4相关学问点说明:4. 1初始化相关高亮的一些全局变量会在InitEVentSo里进行初始化,在event,c文件里。这个函数在开机过程中的一个调用栈关系如下:Init
5、Evcnts();InitEvcntHandlersBeforcPowcrOn();voidMMI_task(oslEntryType*entry_param)InitEventsO:还会在InitFramcwork()中被调用,而InitFramCWork()会由于开机的状态不同,如USB开机、闹钟开机等,调用流程也不尽相同。详细的可参见我的另一篇应用开机流程的文档。4.2菜单结构及查找4.2.1菜单数数组示意constCUSTOM_MENUmtk_nCustMenus=l,0,18,0,16,2,10933,11062,(U16*)n0rderMenuItem0,2,0,3,1,0,1,2
6、6218,26085,(U16*)n0rderMenuItem_l,3,2,0,1,0,1,555,0,(U16*)0,5,2,0,1,0,1,26173,0,(U16*)0),0,0,0,0,0,0,0,0,(U16*)0)r0,0,0,0,0,0,0,0,(U16*)0),0,0,0,0,0,0,0,0,(U16*)0,。4,2,0,1,0,1,552,0,(U16*)0,0,0,0,0,0,0,0,0,(U16*)0t0,0,0,0,0,0,0,0,(U16*)0f0,0,0,0,0,0,0,0,(U16*)0,CUSTO1.MENUneUStMenUSMAXJ4ENUTEMS;4.2.
7、2通过父窗口MENUID及高亮INDEX找到高亮窗口MENUIDU16GetSeqItemId_Ext(U16parent-iternid,U16index)/*/*1.ocaIVariables*/*/U8i=0,idx=O;U16item_id=0;U8chiId_count=(U8)nCustMcnusparent_itCm_idT.nNumoCMcnu11em;2I三三三三三三三三三三三三三W*/*CodeBody*/*/#ifdefDEVAPP_RESOURCEif(parent_item_id=MENU_ID_DEVAPP_START)KeturnDevAppGetSeqItemI
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- mtk 面试的几个主要问题 面试 几个 主要 问题
