前几天,上面给我一任务,把一已存在的菜单放到另外几处去!
本以为会很简单的(有现成的例子,也做过fugui),想想就知道,这样想往往会眼高手低,居然做了两天了,我大汗哎呀,脸红的要命。
先BS一下自己!
注意了,下面就进入话题了!
同学,这位同学,说你呢,就你,看什么看,不要说话了,现在已经上课了。
MTK中会为很一个菜单(有子菜单)定义一下enum类型的struct,
下面是如何在eunm_menu中添加MY_ADD_MENU的,
typedef enum{
#if defined (__a_b_b__)
abb,
#endif
//在这里省略 N的N次方 条
#in defined (__MY_ADD_MENU__)
MY_ADD_MENU,
#endif
enum_menu_total
}eunm_menu
大伙可能不明白为什么要在这里添加一项呢??
这个enum类型是为 enum_menu_total服务的,
这里添加一项只是为了能让enum_menu_total加1,别的没有了!
因为,后面要用到 enum_menu_total这个参数
ADD_APPLICATION_MENU(THIS_MENU, FATHER_MENU, enum_menu_total,.....)
,就是在这里添加了,我们的菜单也是在这里添加
一般添加菜单有已下几个步骤
1定义
2在对应的enum中添加一项
3修改对应的ADD_APPLICATION_MENU(一般有多处,好像是三处吧)
下面说一另外一下方法,我们不对enum进行修改
1定义
2修改对应的ADD_APPLICATION_MENU(可能是一处,也可能是多处,放心,但不可能是N处)
ADD_APPLICATION_MENU(THIS,FATHER,#if defined(__MY_ADD_MENU__)
enum_menu_total+1,
#else
num_menu_total,
#endif
............
)
在这里推荐这一种方法,第二种不正规。
菜鸟写完了,待高手指点