MTK如何自动隐藏滚动条

有时候我们需要自动隐藏滚动条,可以在gui_redraw_vertical_scrollbar函数做手脚,但是我们需要知道什么时候该显示scroll bar,什么时候不需要。主要看参数g_gui_ssp_state,当它不为GUI_LIST_SMOOTH_SCROLLING_BY_PEN_STATE_UNFOCUS时,表示屏幕被按下、或者在滑动。这时候scroll bar就要画出来,但这个知识针对不是GUI_MENU_TYPE_INVALID的时候。

还有一种情况是针对input box的,而参数g_ssp_state则记录了input box的不同状态,可以通过函数gui_input_box_ssp_get_state来获得这个参数,当它为GUI_INPUT_BOX_SSP_STATE_UNFOCUS时,表示input box是静止的,不要把scroll bar 画出来。void gui_show_vertical_scrollbar(vertical_scrollbar *v) { gui_input_box_ssp_state_enum ssp_input_sate = gui_input_box_ssp_get_state(); gui_menu_type_enum menu_type = gui_list_menu_smooth_scrolling_get_menu_type(); if( (g_gui_ssp_state == GUI_LIST_SMOOTH_SCROLLING_BY_PEN_STATE_UNFOCUS && menu_type != GUI_MENU_TYPE_INVALID) || (menu_type == GUI_MENU_TYPE_INVALID && ssp_input_sate == GUI_INPUT_BOX_SSP_STATE_UNFOCUS)) { return; } //..................................... }

你可能感兴趣的:(list,input,scroll,MTK,menu)