微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > mt2503 Pluto matrix main menu整体翻页功能

mt2503 Pluto matrix main menu整体翻页功能

时间:10-02 整理:3721RD 点击:
[DESCRIPTION]
常见的matrix main menu是将icon 显示在一页内,例如常见的9宫格或12宫格;如果有很多icon 需要显示到多屏,且需要在不同屏之间能整屏切换
,而不是一行或一列这样切换,例如:使用方向键翻页的功能,在当前页面内切换时,正常切换;如果需要切换到不在当前页面的icon 时,就需要整
个翻页。
[SOLUTION]
下面的代码对 pluto classic idle 通用。
1. 设置matrix main menu 一页显示的icon
ShowCategory14Screen 中case MATRIX_MENU:
修改下面这一行代码的第3个参数,如果您一页只显示4列,第三个参数就写4:
configure_fixed_matrix(ixsize, iysize, 4, 0);

2. 为了整体翻页,计算first_displayed_row, first_displayed_column,当这两个变量变化时,就会产生整体翻页的效果;
在 gui_fixed_matrix_menu_locate_highlighted_item 最后,添加下面的代码:
if(GetActiveScreenId() == MAIN_MENU_SCREENID)
{
m->first_displayed_row = (m->highlighted_row / 3) * 3; /*这里的 3 是指一页显示3行,如果行数是其他数值,这里需要对应修改*/
m->first_displayed_column = (m->highlighted_column / 4) * 4; /*这里 4 是指一页显示4列,如果列数是其他值,这里需要对应修改*/
}
附:
如果需要使用方向键或音量键等控制 highlight icon 的切换,可以通过设置 key handler, 例如:
SetKeyHandler(fixed_matrix_goto_previous_item, KEY_VOL_UP, KEY_EVENT_DOWN);
可以设置的key handler 有4个供选择:
fixed_matrix_goto_next_row
fixed_matrix_goto_previous_row
fixed_matrix_goto_next_item
fixed_matrix_goto_previous_item

666666

666路过

继续学习中。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top