在LVGL屏幕里,默認是白色的, 當我們要更改他的屏幕顏色時,可以這樣操作:
lv_obj_t* one = lv_obj_create(NULL, NULL); //在默認屏上創建obj對象 lv_obj_set_size(one, LV_HOR_RES, LV_VER_RES); // 設置到屏幕大小 lv_obj_set_style_local_bg_color(one, LV_OBJ_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLUE); // obj背景色設成黃色 //lv_scr_load_anim(one, LV_SCR_LOAD_ANIM_NONE, 5, 10000, true); lv_scr_load(one); lv_obj_t* two = lv_obj_create(NULL, NULL); // 創建新屏幕但未加載到顯示 lv_obj_set_size(two, LV_HOR_RES, LV_VER_RES); //設置到屏幕大小 lv_obj_set_style_local_bg_color(two, LV_OBJ_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_ORANGE); // 背影色設成藍色 lv_scr_load_anim(two, LV_SCR_LOAD_ANIM_OVER_LEFT, 7000, 5000, true);
屏幕是特殊對象,lv_obj_t* one = lv_obj_create( lv_scr_act(), NULL);可以不用lv_scr_act()獲取活動的屏幕,直接用NULL就好。
lv_scr_load(one)是直接加載屏幕; two的lv_scr_load_anim(xxxxxx)是動畫加載,對於SWM32S芯片來講,整屏操作
真是太慢了,拉窗聯感覺強憨呀,以后再想辦法優化。。。。
上圖看它的工作過程:

藍色是直接加載的,橘黃色是動畫加載了,我設的參數比較慢。
時間:2021-05-26
我們可以通過lv_obj_set_size設置屏幕塊的大小,通過測試發現lv_obj_set_x這個設置是沒用的,跟本不能調整位置作用。
lv_obj_t* two3 = lv_obj_create(lv_scr_act(), NULL); // 創建新屏幕但未加載到顯示 lv_obj_set_x(two3, 200);//設置X軸起點 lv_obj_set_y(two3, 200);//設置Y軸起點 lv_obj_set_size(two3, LV_HOR_RES, LV_VER_RES/6); //設置到屏幕大小
------》問題解決了,因為幫定父對像,所以子對像不能再單獨更改位置了
時間:2021-05-28
LVGL的定時刷新系統,其文件為lv_refr.h lv_refr.c;定時刷新是LVGL的子系統,自身刷新自身的功能項,
源碼和網上,了解很多信息,也沒找到用戶如何實現的方法,這方面的案例基本為0,還了解到LVGL沒有動態繪制
曲線的控件,我也是無語了!!
-----------》問題解決了, 這個繪制曲線可以用lv_chart.c lv_chart.h這個小部件實現,有個小測試請閱讀
contiki ng與LVGL圖形庫之chart圖表功能 ,會對CHART圖表有所啟發,。。
