加载器(Spinner)
示例代码
spinner = lvgl.spinner_create(lvgl.scr_act(), nil)
lvgl.obj_set_size(spinner, 100, 100)
lvgl.obj_align(spinner, nil, lvgl.ALIGN_CENTER, 0, 0)
创建
通过 lvgl.spinner_create
就可创建一个加载器,本身自带动画效果。
spinner = lvgl.spinner_create(lvgl.scr_act(), nil)
弧长
可以通过 lvgl.spinner_set_arc_length
函数调整加载器的弧长。单位是度,一圈是按 360 度计算的。
lvgl.spinner_set_arc_length(spinner, 180)
转速
通过 lvgl.spinner_set_spin_time
可以设置转速,这里的单位是 ms,是加载器转完一圈的时间,GIF 录制的时间稍微有点快,这里转完一圈的时间设置的是 4 秒。
lvgl.spinner_set_spin_time(spinner, 4000)
类型
旋转类型通过 lvgl.spinner_set_type
设置,这里的类型支持以下几种:
lvgl.SPINNER_TYPE_SPINNING_ARC -- 顶部减速
lvgl.SPINNER_TYPE_FILLSPIN_ARC -- 弧的长度会改变
lvgl.SPINNER_TYPE_CONSTANT_ARC -- 恒速转动
下面分别看下这几种加载器的显示效果:
lvgl.SPINNER_TYPE_SPINNING_ARC
在顶部的时候可以看到略微减速了。
lvgl.spinner_set_type(spinner, lvgl.SPINNER_TYPE_SPINNING_ARC)
lvgl.SPINNER_TYPE_FILLSPIN_ARC
弧的长度会改变,这个效果比较明显。
lvgl.spinner_set_type(spinner, lvgl.SPINNER_TYPE_FILLSPIN_ARC )
lvgl.SPINNER_TYPE_CONSTANT_ARC
恒定速度转动。
lvgl.spinner_set_type(spinner, lvgl.SPINNER_TYPE_CONSTANT_ARC)
API
lvgl.lvgl.spinner_create
调用 | lvgl.lvgl.spinner_create(par, copy) |
---|
功能 | 创建一个加载器对象 |
返回 | 指向创建的加载器的指针 |
参数 | |
par | 指向对象的指针, 它将是新键对象的父对象 |
copy | 指向加载器对象的指针, 如果不为 nil, 则将从其复制新对象 |
lvgl.spinner_set_arc_length
调用 | lvgl.spinner_set_arc_length(spinner, deg) |
---|
功能 | 设置加载器的弧长 |
参数 | |
spinner | 指向加载器对象的指针 |
deg | 加载器的弧长 |
lvgl.spinner_set_spin_time
调用 | lvgl.spinner_set_spin_time(spinner, time) |
---|
功能 | 设置加载器的动画时间 |
参数 | |
spinner | 指向加载器对象的指针 |
time | 加载器的动画时间 |
lvgl.spinner_set_type
调用 | lvgl.spinner_set_type(spinner, type) |
---|
功能 | 设置加载器的类型 |
参数 | |
spinner | 指向加载器对象的指针 |
time | 加载器的类型 |
| lvgl.SPINNER_TYPE_SPINNING_ARC – 顶部减速 |
| lvgl.SPINNER_TYPE_FILLSPIN_ARC – 弧的长度会改变 |
| lvgl.SPINNER_TYPE_CONSTANT_ARC – 恒速转动 |
lvgl.spinner_set_dir
调用 | lvgl.spinner_set_dir(spinner, dir) |
---|
功能 | 设置加载器的动画方向 |
参数 | |
spinner | 指向加载器对象的指针 |
dir | 加载器的方向 |
| lvgl.SPINNER_DIR_FORWARD – 正向 |
| lvgl.SPINNER_DIR_BACKWARD – 反向 |
lvgl.spinner_get_arc_length
调用 | lvgl.spinner_get_arc_length(spinner) |
---|
功能 | 获取加载器的弧长 |
返回 | 加载器的弧长 |
参数 | |
spinner | 指向加载器对象的指针 |
lvgl.spinner_get_spin_time
调用 | lvgl.spinner_get_spin_time(spinner) |
---|
功能 | 获取加载器的动画时间 |
返回 | 加载器的动画时间 |
参数 | |
spinner | 指向加载器对象的指针 |
lvgl.spinner_get_type
调用 | lvgl.spinner_get_type(spinner) |
---|
功能 | 获取加载器的类型 |
返回 | 加载器的类型 |
参数 | |
spinner | 指向加载器对象的指针 |
lvgl.spinner_get_dir
调用 | lvgl.spinner_get_dir(spinner) |
---|
功能 | 获取加载器的动画方向 |
返回 | 加载器的动画方向 |
参数 | |
spinner | 指向加载器对象的指针 |