lvgl page 背景透明
时间: 2023-11-29 14:06:10 浏览: 73
可以通过设置背景的不透明度来实现LVGL page的背景透明。具体方法如下:
1. 设置背景的不透明度为0,即完全透明。
```c
lv_obj_set_style_local_bg_opa(page, LV_PAGE_PART_BG, LV_STATE_DEFAULT, LV_OPA_TRANSP);
```
2. 设置背景的渐变颜色为空,即不显示任何颜色。
```c
lv_obj_set_style_local_bg_grad_color(page, LV_PAGE_PART_BG, LV_STATE_DEFAULT, LV_COLOR_TRANSP);
```
3. 设置背景图片的不透明度为0,即完全透明。
```c
lv_obj_set_style_local_bg_img_opa(page, LV_PAGE_PART_BG, LV_STATE_DEFAULT, LV_OPA_TRANSP);
```
4. 设置背景图片重着色为false,即不进行重着色。
```c
lv_obj_set_style_local_bg_img_recolor(page, LV_PAGE_PART_BG, LV_STATE_DEFAULT, false);
```
相关问题
lvgl page手势
LVGL中的Page控件支持多种手势,包括以下几种:
1. 向左滑动:可以通过设置Page控件的方向属性为LV_PAGE_DIR_HOR才能进行水平滑动,然后通过设置LV_PAGE_MODE_SCROLL和LV_PAGE_MODE_SCRLB属性为true来启用滚动条的显示和滚动条的拖动。
2. 向右滑动:同向左滑动,只需将方向属性设置为LV_PAGE_DIR_HOR反向即可。
3. 向上滑动:可以通过设置Page控件的方向属性为LV_PAGE_DIR_VER才能进行垂直滑动,然后通过设置LV_PAGE_MODE_SCROLL和LV_PAGE_MODE_SCRLB属性为true来启用滚动条的显示和滚动条的拖动。
4. 向下滑动:同向上滑动,只需将方向属性设置为LV_PAGE_DIR_VER反向即可。
此外,还可以通过设置LV_PAGE_MODE_SNAP属性为true来启用吸附模式,即滑动到某个页面时会自动吸附到该页面。
lvgl 屏蔽page左右手势
要屏蔽LVGL中page控件的左右手势,可以通过设置page控件的回调函数来实现。具体方法是:
1. 创建一个新的page控件回调函数,命名为my_page_event_cb。
2. 在my_page_event_cb函数中,判断event参数是否为LV_EVENT_GESTURE,如果是,则获取手势方向并判断是否为左右手势,如果是,则返回true,表示屏蔽该手势。
3. 将my_page_event_cb函数设置为page控件的回调函数,即调用lv_page_set_event_cb(page, my_page_event_cb)。
下面是一个示例代码:
```c
static bool my_page_event_cb(lv_obj_t * page, lv_event_t event)
{
if (event == LV_EVENT_GESTURE) {
lv_indev_t * indev = lv_indev_get_act();
lv_gesture_dir_t dir = lv_indev_get_gesture_dir(indev);
if (dir == LV_GESTURE_DIR_LEFT || dir == LV_GESTURE_DIR_RIGHT) {
return true;
}
}
return false;
}
lv_obj_t * page = lv_page_create(parent, NULL);
lv_page_set_event_cb(page, my_page_event_cb);
```
这样,page控件的左右手势就被屏蔽了。