问题
lv_list里的按钮,如果在边缘未出现完整,点击后会自动完整停靠边缘,我想将这个功能关闭.
解决:
1
| lv_obj_clear_flag(,LV_OBJ_FLAG_SCROLL_ON_FOCUS);
|
完整代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| for (int i = 0; i < 4; ++i) {
mainWin.tabview.arrLRList[i] = lv_list_create(mainWin.tabview.arrTab[i]); lv_obj_set_pos(mainWin.tabview.arrLRList[i], 0, 0); lv_obj_set_size(mainWin.tabview.arrLRList[i], 1024 - 196, 600 - 67); removeBorder(mainWin.tabview.arrLRList[i]); lv_obj_set_scrollbar_mode(mainWin.tabview.arrLRList[i], LV_SCROLLBAR_MODE_OFF);
lv_obj_set_flex_flow(mainWin.tabview.arrLRList[i], LV_FLEX_FLOW_ROW); lv_obj_set_scroll_dir(mainWin.tabview.arrLRList[i], LV_DIR_HOR);
lv_obj_clear_flag(mainWin.tabview.arrLRList[i], LV_OBJ_FLAG_SCROLL_ELASTIC);
for (int j = 0; j < 15; ++j) { mainWin.tabview.arrListBtn[i][j] = lv_list_add_btn(mainWin.tabview.arrLRList[i], 0, 0); lv_obj_remove_style_all(mainWin.tabview.arrListBtn[i][j]); lv_obj_set_size(mainWin.tabview.arrListBtn[i][j], (1024 - 196) / 3, 600 - 67); lv_obj_set_style_outline_width(mainWin.tabview.arrListBtn[i][j], 2, 0); lv_obj_set_style_outline_color(mainWin.tabview.arrListBtn[i][j], lv_color_black(), 0);
lv_obj_add_event_cb(mainWin.tabview.arrListBtn[i][j],cb_ListBtn,LV_EVENT_ALL,NULL); lv_obj_clear_flag(mainWin.tabview.arrListBtn[i][j],LV_OBJ_FLAG_SCROLL_ON_FOCUS); } }
|