【LVGL】ANIM(动画)时间线学习

2023-11-02

时间线(timeline)

有时候需要同时播放较多动画,此时如果逐个播放的话,需要逐个为动画设计延时,不方便安排。此时,可以使用 LVGL 提供的时间线(timeline)统一安排各个动画。

时间线的创建非常简单。首先,创建一系列动画,但先不调用 lv_anim_start() 让动画开始。
其次,创建一个时间线并将各个动画添加到时间线的某一时刻处:

lv_anim_timeline_t* anim_timeline = lv_anim_timeline_create();
lv_anim_timeline_add(anim_timeline, 0, &anim_axis);
lv_anim_timeline_add(anim_timeline, 100, &anim_obj_01);
lv_anim_timeline_add(anim_timeline, 1100, &anim_obj_02);
lv_anim_timeline_add(anim_timeline, 2100, &anim_obj_03);
lv_anim_timeline_add(anim_timeline, 300, &anim_label_01);
lv_anim_timeline_add(anim_timeline, 1300, &anim_label_02);
lv_anim_timeline_add(anim_timeline, 2300, &anim_label_03);

使用时间线时,无需为动画设计延时,只需要关注动画会在什么时刻播放,延时便会自动计算。

这样就可以创建很复杂的组合动画效果了:

请添加图片描述
使用时间线可以方便管理所有动画,可以将时间线上包含的所有动画停播、倒放、跳转等。以下列出了一些常用的时间线控制函数:

![在这里插入图片描述](https://img-blog.csdnimg.cn/4511d7ebd7bb4d7295b68b54acb2db00.png
如果需要倒放,在设置了播放方向后还需要调用 lv_anim_timeline_start() 重新播放,并且会从当前位置倒放。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【LVGL】ANIM(动画)时间线学习 的相关文章

随机推荐

  • JAVA基础常见简答题面试题

    1 为什么java是半编译半解释性的语言 java如何实现跨平台 java的编译器先将其编译为class文件 也就是字节码 然后将字节码交由jvm java虚拟机 解释执行 所以很多地方都说 java是一种半编译 半解释执行 的语言 JAV
  • 拓扑排序 topologicalSort

    拓扑排序 topologicalSort 背景知识 图 Graph 顶点和边 vertex and edge 无向图 Undirected Graph 有向图 Directed Graph 有向图的degree 图中的环 基本概念 什么是拓
  • Angular自定义组件实现ngModel双向绑定

    1 自定义组件ts Component selector app custom tree templateUrl custom tree component html styles providers provide NG VALUE AC
  • [系统安全] 四十八.恶意软件分析 (4)Cape沙箱批量提取动态API特征

    终于忙完初稿 开心地写一篇博客 您可能之前看到过我写的类似文章 为什么还要重复撰写呢 只是想更好地帮助初学者了解病毒逆向分析和系统安全 更加成体系且不破坏之前的系列 因此 我重新开设了这个专栏 准备系统整理和深入学习系统安全 逆向分析和恶意
  • JavaScript-内置对象和包装类型

    作为JS面试题中经常被问到的考点 怎么能不好好了解 理解呢 或许标题中的名词我们不是很了解 但是我相信我们一定都实践过 而且不止一次 只不过当时我们或许停留在使用的层次 没有深入了解原理 在此之前的我也是这样的 不过学习知识 果真是 N 1
  • 恋爱与婚姻的区别

    恋爱是走在婚姻的路上 婚姻是恋爱的最好归宿 不是每一对恋人都能走进婚姻的殿堂 也不是每一对夫妻都能白头偕老 恋爱和婚姻不同 恋爱是没上保险的爱情 而婚姻是上了保险的爱情 在一般情况下 一对恋人容易和平相处 而一对夫妻却常常因为一点小事 争论
  • Anaconda命令-网站大全

    Anaconda命令 网站大全 命令行初始化 conda init 在安装好Anaconda之后配置命令行自动激活base环境 支持PowerShell和Cmd 配置pip Anaconda软件源 清华源 pip 网站 pypi 镜像站使用
  • 数据结构(使用尾插法实现单链表)

    1 线性表的链式存储就是单链表 单链表通过一组任意的存储单元来存储线性表的数据元素 逻辑相邻 存储离散 单链表对于每一个链表结点 不但存储自身数据 还开辟了存储一个指向后继结点的指针 2 单链表相比顺序表 优点 解决了顺序表需要大量连续存储
  • 规则引擎Drools使用 第十三篇 Drools 编写规则文件的规范

    我们在进行drl类型的规则文件编写时尽量遵循如下规范 所有的规则文件 drl 应统一放在一个规定的文件夹中 如 rules文件夹 书写的每个规则应尽量加上注释 注释要清晰明了 言简意赅 同一类型的对象尽量放在一个规则文件中 如所有Stude
  • 梅科尔工作室-李朝阳-鸿蒙笔记3

    list组件 列表组件 相当于大盒子里面套小盒子 示例 父子组件 即主 次两个文件之间内容的调用 if else循环 改变组件的渲染状态 判断是否需要改变状态 示例 for循环 开发框架提供循环渲染 ForEach组件 来迭代数组 并为每一
  • Sqlite3之C++开发常用API总结

    文章目录 Sqlite3之C 开发常用API总结 使用流程 sqlite3 open Sqlite3 prepare sqlite3 bind sqlite3 step sqlite3 column sqlite3 exec sqlite3
  • 论文阅读——基于观测数据的时间序列因果推断综述

    国防科大2022年3月的综述 1 Granger 多元Granger VAR 条件集 P X Y gt 条件VAR模型 比较y与y 来判定因果关系 加入条件集 消除其它变量影响 条件Granger 用矩阵表示参数 简化计算 并提出基于检验的
  • 整车控制器(VCU)

    纯电动汽车整车控制架构图 图片 电动新视界 纯电动汽车整车控制策略图 图片 电动新视界 纯电动
  • 【2019.05】JS逆向——破解百度翻译参数(sign)爬虫 超级详细

    有时间了打算把有道 百度 Google翻译都搞一遍 填坑百度翻译 这篇与有道那篇操作基本一致 有可能写的没有那篇清楚 大家也可以观摩一下上一篇 2019 05 JS逆向 破解有道翻译爬虫参数 sign 一 分析请求参数 打开地址 https
  • transformer中layer normalization详解

    2015年batch normalization提出 2016年的layer normalization 这是在论文中截的图 箭头指向的青色线代表加了layer normalization的模型 收敛速度最快 layer normaliza
  • Matalb在一张图中拟合多条曲线

    function Multiple fitted curves SOC 3A U 3A SOC 2A U 2A SOC 1A U 1A SOC 05A U 05A 将需要绘制图像的数据加入参数中 Fit SOC U xData1 yData
  • netty 学习系列 ChannelOption

    Netty之ChannelOption 一 详情 在用netty作为底层网络通信的时候关于ChannelOption的参数让我一直模糊不清楚 于是去看一下linux网络编程 发现ChannelOption的各种属性在套接字选项中都有对应 下
  • 【计算机网络】网络层:外部网关协议BGP

    BGP是不同自治系统的路由器之间交换路由信息的协议 采用路径向量路由选择协议 只能力求选择出一条能够到达目的网络且比较好的路由 不是计算出一条最佳路由 首先互联网规模太大 使得AS之间路由选择非常困难 其次自治系统AS之间路由选择需要考虑安
  • 内置对象--Math对象

    Math对象 数学对象 是一个内置对象 它拥有一些数学常数属性和数学函数方法 他不是构造函数 不需要用到new 可以直接使用 Math 的所有属性与方法都是静态的 Math的常用方法 Math abs 1 gt 1 返回一个数的绝对值 Ma
  • 【LVGL】ANIM(动画)时间线学习

    时间线 timeline 有时候需要同时播放较多动画 此时如果逐个播放的话 需要逐个为动画设计延时 不方便安排 此时 可以使用 LVGL 提供的时间线 timeline 统一安排各个动画 时间线的创建非常简单 首先 创建一系列动画 但先不调