I’m using littleLVGL and I’m having some difficulties, I’m using two screens to alternate as soon as I press a button.
However, when I go to switch screens between one and the other there are some problems:
- When calling the first screen, the next screen returns from the application “out of nowhere”.
- I can’t call the same screen more than once.
My code is this:
First Page:
int create_page1(page_t page1, float * create_set_value)
{
lv_obj_t * parent = lv_obj_create(NULL, NULL);
lv_scr_load(parent);
layout_small(parent, page1.title_text, page1.title_font_type, page1.page_color, page1.title_color);
int peKey = KEY_NONE;
while(1)
{
lv_task_handler();
usleep(100);
Get_Key ( &peKey, 10, false);
if(peKey == KEY_ENTER)
{
lv_obj_clean(parent);
*create_set_value = set_value;
return 0;
}
if(peKey == KEY_CANCEL)
{
lv_obj_clean(parent);
return -1;
}
}
}
Second Page:
void full_screen(void)
{
lv_obj_t * parent = lv_obj_create(NULL, NULL);
lv_scr_load(parent);
// Title bar
obj_title_bar = lv_obj_create(parent, NULL);
create_screen_full(parent);
Key = KEY_NONE;
Get_Key ( &peKey, 10, true);
while(1)
{
lv_task_handler();
usleep(100);
Get_Key ( &peKey, 10, false);
if(peKey == KEY_ENTER)
{
lv_obj_clean(parent);
return;
}
}
}