MTK主题风格

    技术2022-05-19  21

          刚接触MTK的人也许会感觉到它的主题风格很神奇,感觉只要稍微的改一些东西就可以改变使其风格

    迥异,控制风格的这些东西何去何从呢?虽然不知道路径也不会影响任何的工作,可是知道还是好一

    些,毕竟心里亮堂一些。以前曾经查过它的路径,可是当时感觉乱乱的,后来因为有事就放在一边了

    ,今天闲来无事,就找了一下,没想到还真找到了一条路径,不过没有经过验证,还请各位高手给知

    道一下!大家都知道,我们修改字体颜色,填充颜色等主题风格时只要在themecomponents.h里找到相应的参

    数改一下就行了,那么,这些参数在那里使用呢?我们可以在ThemeRes.c里找到它们的身影,在变量

    theme_defaultTheme 里它们一一呈现在我们眼前,现在我们需要找 theme_defaultTheme 在那里用

    的了。呵呵,它还在这个文件里,找一下mtk_MMI_themes[MAX_MMI_THEMES],我们发现

    theme_defaultTheme  做为它的一员而存在(也许是仅有的一员哦)。再找下去!令我们意外的是在一个很陌生的文件里我们找到了它:resource_image_jtbl.c里的image2ndJumpTbl[] 第三个成员就是它了。然后我们搜索image2ndJumpTbl,在StandaloneRes.c文件里的函数

    void InitializeResourceVariables(void)里,我们发现这样一个赋值:

    MMI_themes = (MMI_theme **) (image2ndJumpTbl[2]);

    这不就是image2ndJumpTbl吗?现在我们总算看到了一丝希望了,因为继续找下去会来到

    void wgui_init(void)这个函数,很熟悉吧,在往下看,

    set_MMI_theme((MMI_theme*) MMI_themes[0]);不就是我们的目的地吗?

    废话了这么多,其实也就是下面这几行:

    函数或文件                变量或语句themecomponents.h         相应变量                       ->ThemeRes.c                theme_defaultTheme             ->ThemeRes.c                mtk_MMI_themes[MAX_MMI_THEMES] ->resource_image_jtbl.c     image2ndJumpTbl[]              ->void InitializeResourceVariables(void)

                              MMI_themes = (MMI_theme **) (image2ndJumpTbl[2]);->

    void wgui_init(void)      set_MMI_theme((MMI_theme*) MMI_themes[0]);


    最新回复(0)