1 #include "../../lv_examples.h"
2 #if LV_USE_MENU && LV_BUILD_EXAMPLES
3
4 static uint32_t btn_cnt = 1;
5 static lv_obj_t * main_page;
6 static lv_obj_t * menu;
7
float_btn_event_cb(lv_event_t * e)8 static void float_btn_event_cb(lv_event_t * e)
9 {
10 LV_UNUSED(e);
11
12 btn_cnt++;
13
14 lv_obj_t * cont;
15 lv_obj_t * label;
16
17 lv_obj_t * sub_page = lv_menu_page_create(menu, NULL);
18
19 cont = lv_menu_cont_create(sub_page);
20 label = lv_label_create(cont);
21 lv_label_set_text_fmt(label, "Hello, I am hiding inside %"LV_PRIu32, btn_cnt);
22
23 cont = lv_menu_cont_create(main_page);
24 label = lv_label_create(cont);
25 lv_label_set_text_fmt(label, "Item %"LV_PRIu32, btn_cnt);
26 lv_menu_set_load_page_event(menu, cont, sub_page);
27
28 lv_obj_scroll_to_view_recursive(cont, LV_ANIM_ON);
29 }
30
lv_example_menu_4(void)31 void lv_example_menu_4(void)
32 {
33 /*Create a menu object*/
34 menu = lv_menu_create(lv_scr_act());
35 lv_obj_set_size(menu, lv_disp_get_hor_res(NULL), lv_disp_get_ver_res(NULL));
36 lv_obj_center(menu);
37
38 lv_obj_t * cont;
39 lv_obj_t * label;
40
41 /*Create a sub page*/
42 lv_obj_t * sub_page = lv_menu_page_create(menu, NULL);
43
44 cont = lv_menu_cont_create(sub_page);
45 label = lv_label_create(cont);
46 lv_label_set_text(label, "Hello, I am hiding inside the first item");
47
48 /*Create a main page*/
49 main_page = lv_menu_page_create(menu, NULL);
50
51 cont = lv_menu_cont_create(main_page);
52 label = lv_label_create(cont);
53 lv_label_set_text(label, "Item 1");
54 lv_menu_set_load_page_event(menu, cont, sub_page);
55
56 lv_menu_set_page(menu, main_page);
57
58 /*Create floating btn*/
59 lv_obj_t * float_btn = lv_btn_create(lv_scr_act());
60 lv_obj_set_size(float_btn, 50, 50);
61 lv_obj_add_flag(float_btn, LV_OBJ_FLAG_FLOATING);
62 lv_obj_align(float_btn, LV_ALIGN_BOTTOM_RIGHT, -10, -10);
63 lv_obj_add_event_cb(float_btn, float_btn_event_cb, LV_EVENT_CLICKED, menu);
64 lv_obj_set_style_radius(float_btn, LV_RADIUS_CIRCLE, 0);
65 lv_obj_set_style_bg_img_src(float_btn, LV_SYMBOL_PLUS, 0);
66 lv_obj_set_style_text_font(float_btn, lv_theme_get_font_large(float_btn), 0);
67 }
68
69 #endif
70
71