| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> 嵌入式GUI LVGL『Tile View拼接视图控件』介绍 -> 正文阅读 |
|
[游戏开发]嵌入式GUI LVGL『Tile View拼接视图控件』介绍 |
一. LVGL GUI拼接视图控件的概念? Tileview是一个容器对象,其中的元素(称为tiles)可以以网格形式排列。通过滑动,用户可以在这些贴图之间导航。 如果Tileview是屏幕大小,它会提供一个你可能在智能手表上看到过的用户界面。 二. LVGL GUI拼接视图小部件和样式Tileview和Page有相同的部分。除了使用LV_PAGE_PART_SCRL,因为它不能被引用,而且它总是透明的。请参阅本页的详细文档。 三. LVGL GUI拼接视图控件的使用1. 有效位置(Valid positions)这些瓷砖不必形成一个完整的网格,每个元素都存在。网格中可以有洞,但它必须是连续的,即不能有空的行或列。 使用lv_tileview_set_valid_positions(tileview, valid_pos_array, array_len)可以设置有效的位置。滚动只能滚动到这些位置。索引0,0表示左上角的tile。例如lv_point_t valid_pos_array[] = {{0,0}, {0,1}, {1,1}, {{LV_COORD_MIN, LV_COORD_MIN}}给出了一个带有“L”形状的Tile视图。它表示{1,1}中没有瓦片,因此用户不能滚动到那里。 换句话说,valid_pos_array告诉tiles在哪里。它可以在飞行中改变,以禁用特定瓷砖的一些位置。例如,可以有一个2x2的网格,其中添加了所有的贴图,但是第一行(y = 0)作为“主行”,第二行(y = 1)包含上面的贴图的选项。让我们说水平滚动只可能在主行,而不可能在第二行的选项之间。在这种情况下,当一个新的主贴图被选中时,valid_pos_array需要改变: 对于第一个主贴图:{0,0},{0,1},{1,0}来禁用{1,1}选项贴图 对于第二个主贴图{0,0}、{1,0}、{1,1}禁用{0,1}选项贴图 2. 设置拼接(Set tile)设置当前可见的贴图使用lv_tileview_set_tile_act(tileview, x_id, y_id, LV_ANIM_ON/OFF) 3. 增加元素(Add element)要添加元素,只需在Tileview上创建一个对象,并手动将其定位到所需的位置。 应该使用lv_tileview_add_element(tielview, element)来滚动(拖动)一个tielview的元素。例如,如果一个平铺贴图上有一个按钮,那么这个按钮需要显式地添加到tile view中,以便用户使用这个按钮滚动tile view。 4. 滚动传播(Scroll propagation)这里可以很好地使用页面类对象(如列表)的滚动传播特性。例如,可以有一个完整大小的列表,当它到达顶部或底部的大多数位置时,用户将滚动tile视图。 5. 动画时间(Animation time)Tileview的动画时间可以通过lv_tileview_set_anim_time(Tileview, anim_time)来调整。 6. 边缘闪烁(Edge flash)当平铺视图到达无效位置或滚动平铺视图结束时,可以添加“边缘闪光”效果。 使用lv_tileview_set_edge_flash(tileview, true)来启用该特性。 7. 事件(Event)除了基本事件外,还有一个特殊事件 LV_EVENT_VALUE_CHANGED?Sent when a new tile loaded either with scrolling or? 我们来看个例子
好了,完结了,更多精彩继续戳↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/28 2:40:46- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |