MTK:sofekey的显示

网友投稿 547 2022-11-12

MTK:sofekey的显示

MTK:sofekey的显示

需求:有些双模项目,左软件与send2键共用。在idle界面时要求按send2键(即LSK)直接拨号,此时真正左软件的功能只有通过center键来实现。但是LSK的标签仍然显示在屏幕的左下方,引起误解。因此,在拨号界面可以把LSK的标签往中间位置移动。

1.有些screen id,需要同时SHOW LSK and RSK,于是在dm_redraw_category_screen()中获取screen模板ID时,对于LSK/RSK就是DM_BUTTON_BAR1,直接使用一个函数:dm_setup_and_draw_button_bar()就可以SHOW出来了。

2.有些screen id,只需要LSK或者只需要RSK,因此在dm_setup_and_draw_button_bar()中获取模板ID时,可能只有DM_LSK或者DM_RSK,因此只需要调用dm_setup_and_draw_left_softkey()SHOW出左软件,或者dm_setup_and_draw_right_softkey()SHOW出右软件。

3.以全部显示LSK,RSK函数dm_setup_and_draw_button_bar()为例:

在开机后,MMI_softkeys[]中值就是设置好的。在SHOW具体的SCREEN时,共4个步骤:

(1)    从模板的属性集中获取尺寸;

(2)    利用获取的尺寸调用move_softkey()修改MMI_softkeys[]中的X,Y;

(3)    resize_softkey()调整MMI_softkeys[]尺寸;

(4)    show_softkey()

因此,如果需要移动RSK的标签位置,利用Screen ID作为判断条件,重新move_softkey( ),参数设为自己需要的标签。比如移动到中间位置:

if (YOU_SCREEN_ID == GetActiveScreenId())

move_softkey((UI_DEVICE_WIDTH-MMI_SOFTKEY_WIDTH)/2, 200, MMI_LEFT_SOFTKEY);

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:关于考试作弊的14个超强笑话
下一篇:MyBatis Example And与Or混合使用的实例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~