Animation Image (lv_animimg)¶
Overview¶
The animation image is similar to the normal 'Image' object. The only difference is that instead of one source image, you set an array of multiple source images.
You can specify a duration and repeat count.
Parts and Styles¶
LV_PART_MAIN
A background rectangle that uses the typical background style properties and the image itself using the image style properties.
Events¶
No special events are sent by image objects.
See the events of the Base object too.
Learn more about Events.
Example¶
Simple Animation Image¶
C code
GitHub#include "../../lv_examples.h"
#if LV_USE_ANIMIMG && LV_BUILD_EXAMPLES
LV_IMG_DECLARE(animimg001)
LV_IMG_DECLARE(animimg002)
LV_IMG_DECLARE(animimg003)
static const lv_img_dsc_t * anim_imgs[3] = {
&animimg001,
&animimg002,
&animimg003,
};
void lv_example_animimg_1(void)
{
lv_obj_t * animimg0 = lv_animimg_create(lv_scr_act());
lv_obj_center(animimg0);
lv_animimg_set_src(animimg0, (const void **) anim_imgs, 3);
lv_animimg_set_duration(animimg0, 1000);
lv_animimg_set_repeat_count(animimg0, LV_ANIM_REPEAT_INFINITE);
lv_animimg_start(animimg0);
}
#endif
anim_imgs = [None]*3
# Create an image from the png file
try:
with open('../../assets/animimg001.png','rb') as f:
anim001_data = f.read()
except:
print("Could not find animimg001.png")
sys.exit()
anim_imgs[0] = lv.img_dsc_t({
'data_size': len(anim001_data),
'data': anim001_data
})
try:
with open('../../assets/animimg002.png','rb') as f:
anim002_data = f.read()
except:
print("Could not find animimg002.png")
sys.exit()
anim_imgs[1] = lv.img_dsc_t({
'data_size': len(anim002_data),
'data': anim002_data
})
try:
with open('../../assets/animimg003.png','rb') as f:
anim003_data = f.read()
except:
print("Could not find animimg003.png")
sys.exit()
anim_imgs[2] = lv.img_dsc_t({
'data_size': len(anim003_data),
'data': anim003_data
})
animimg0 = lv.animimg(lv.scr_act())
animimg0.center()
animimg0.set_src(anim_imgs, 3)
animimg0.set_duration(1000)
animimg0.set_repeat_count(lv.ANIM_REPEAT_INFINITE)
animimg0.start()
API¶
Typedefs
-
typedef uint8_t lv_animimg_part_t¶
Functions
-
lv_obj_t *lv_animimg_create(lv_obj_t *parent)¶
Create an animation image objects
- Parameters
parent -- pointer to an object, it will be the parent of the new button
- Returns
pointer to the created animation image object
-
void lv_animimg_set_src(lv_obj_t *img, const void *dsc[], uint8_t num)¶
Set the image animation images source.
- Parameters
img -- pointer to an animation image object
dsc -- pointer to a series images
num -- images' number
-
void lv_animimg_start(lv_obj_t *obj)¶
Startup the image animation.
- Parameters
obj -- pointer to an animation image object
-
void lv_animimg_set_duration(lv_obj_t *img, uint32_t duration)¶
Set the image animation duration time. unit:ms
- Parameters
img -- pointer to an animation image object
-
void lv_animimg_set_repeat_count(lv_obj_t *img, uint16_t count)¶
Set the image animation repeatly play times.
- Parameters
img -- pointer to an animation image object
count -- the number of times to repeat the animation
-
const void **lv_animimg_get_src(lv_obj_t *img)¶
Get the image animation images source.
- Parameters
img -- pointer to an animation image object
- Returns
a pointer that will point to a series images
-
uint8_t lv_animimg_get_src_count(lv_obj_t *img)¶
Get the image animation images source.
- Parameters
img -- pointer to an animation image object
- Returns
the number of source images
Variables
-
const lv_obj_class_t lv_animimg_class¶
-
struct lv_animimg_t¶