lvgl7.11 page左右滑动和左右手势冲突,怎么屏蔽page左右滑动效果
时间: 2023-11-06 17:17:29 浏览: 1075
要屏蔽 `page` 左右滑动效果,可以通过下面两种方式来实现:
1. 禁用 `page` 的左右滑动功能
可以通过设置 `page` 的 `edge_flash` 属性来禁用 `page` 的左右滑动功能。具体实现代码如下:
```c
lv_obj_set_edge_flash(page, false);
```
2. 屏蔽 `page` 的左右手势
可以通过 `page` 的父级容器的 `gesture` 回调函数来屏蔽 `page` 的左右手势。具体实现代码如下:
```c
lv_obj_set_gesture_parent(page, true); // 将page的父级容器作为gesture的目标
lv_obj_set_gesture_cb(page->parent, gesture_cb); // 设置gesture的回调函数
static void gesture_cb(lv_obj_t * obj, lv_gesture_dir_t dir)
{
if (dir == LV_GESTURE_DIR_LEFT || dir == LV_GESTURE_DIR_RIGHT) {
lv_gesture_manager_cancel(); // 屏蔽左右手势
}
}
```
以上两种方法都可以屏蔽 `page` 的左右滑动效果,具体使用哪种方法可以根据实际情况来选择。
相关问题
lvgl7.11 group page界面使用
LVGL 7.11中,Group Page是一个容器,可以包含多个页面,每个页面包含不同的控件。以下是使用Group Page创建界面的步骤:
1. 创建Group Page对象:
```c
lv_obj_t * group = lv_group_create();
lv_obj_t * page1 = lv_page_create(lv_scr_act(), NULL);
lv_obj_t * page2 = lv_page_create(lv_scr_act(), NULL);
```
2. 将页面添加到Group Page中:
```c
lv_group_add_obj(group, page1);
lv_group_add_obj(group, page2);
```
3. 设置当前显示的页面:
```c
lv_group_set_editing(group, true); // 开启编辑模式
lv_group_focus_obj(page1); // 将焦点设置到第一页
```
4. 在页面中添加控件:
```c
lv_obj_t * label1 = lv_label_create(page1, NULL);
lv_label_set_text(label1, "This is page 1");
lv_obj_t * label2 = lv_label_create(page2, NULL);
lv_label_set_text(label2, "This is page 2");
```
5. 切换页面:
```c
lv_group_focus_next(group); // 切换到下一页
lv_group_focus_prev(group); // 切换到上一页
```
以上就是使用Group Page创建界面的基本步骤。需要注意的是,在Group Page中添加的控件需要设置相应的属性,如位置、大小、对齐方式等。
LVGL7.11版本
LVGL 7.11版本是一个开源的嵌入式图形库,用于创建图形用户界面(GUI)。它提供了丰富的功能和灵活的定制选项,可以在各种嵌入式平台上运行,包括微控制器、单片机和嵌入式Linux系统。LVGL 7.11版本引入了许多新功能和改进,包括:
1. 新的小部件:包括表格、数据视图、滑动开关等,为用户界面提供更多样化的选项。
2. 改进的动画引擎:支持更多种类的动画效果,如平移、旋转、缩放等。
3. 支持多语言和本地化:可以轻松地将应用程序本地化为不同的语言。
4. 支持触摸屏和物理按钮:可以轻松地与外部输入设备进行交互。
5. 更好的性能和内存管理:优化了内存使用和渲染速度,提高了应用程序的响应性。
这只是一些主要的改进和功能,LVGL 7.11版本还有许多其他方面的改进和修复。你可以访问LVGL官方网站获取更多信息和文档。
阅读全文