双态按钮
说明:
默认显示图片ui_img_menu2_menu2_workout_status_100x100_png,点击图片切换ui_img_menu2_menu2_workout_records_100x100_png,再次点击图片显示
ui_img_menu2_menu2_workout_status_100x100_png,即实现图片按钮切换图片
引入图片
LV_IMG_DECLARE(ui_img_menu2_menu2_workout_status_100x100_png);
static void event_cb(lv_event_t * e);
static void event_cb1(lv_event_t * e)
{
LV_LOG_USER("event_cb1\n");
static uint32_t cnt = 1;
lv_obj_t * btn = lv_event_get_target(e);
lv_obj_t * label = lv_obj_get_child(btn, 0);
lv_label_set_text_fmt(label, "%"LV_PRIu32, cnt);
cnt++;
lv_obj_t * imgbtn1 = lv_imgbtn_create(lv_scr_act());
lv_imgbtn_set_src(imgbtn1, LV_IMGBTN_STATE_RELEASED, &ui_img_menu2_menu2_workout_status_100x100_png, NULL, NULL);
lv_obj_align(imgbtn1, LV_ALIGN_CENTER, 0, 0);
/*Create a label on the image button*/
lv_obj_t * labela = lv_label_create(imgbtn1);
lv_label_set_text(labela, "event_cb1");
lv_obj_align(labela, LV_ALIGN_CENTER, 0, 0);
lv_obj_add_event_cb(imgbtn1, event_cb, LV_EVENT_CLICKED, NULL);
lv_obj_del(btn);
}
static void event_cb(lv_event_t * e)
{
LV_LOG_USER("event_cb\n");
static uint32_t cnt = 1;
lv_obj_t * btn = lv_event_get_target(e);
lv_obj_t * label = lv_obj_get_child(btn, 0);
lv_label_set_text_fmt(label, "%"LV_PRIu32, cnt);
cnt++;
lv_obj_t * imgbtn1 = lv_imgbtn_create(lv_scr_act());
lv_imgbtn_set_src(imgbtn1, LV_IMGBTN_STATE_RELEASED, &ui_img_menu2_menu2_workout_records_100x100_png, NULL, NULL);
lv_obj_align(imgbtn1, LV_ALIGN_CENTER, 0, 0);
/*Create a label on the image button*/
lv_obj_t * labela = lv_label_create(imgbtn1);
lv_label_set_text(labela, "Button");
lv_obj_align(labela, LV_ALIGN_CENTER, 0, 0);
lv_obj_add_event_cb(imgbtn1, event_cb1, LV_EVENT_CLICKED, NULL);
lv_obj_del(btn);
}
void lv_example_imgbtn_1(void){
/*Create an image button*/
lv_obj_t * imgbtn1 = lv_imgbtn_create(lv_scr_act());
lv_imgbtn_set_src(imgbtn1, LV_IMGBTN_STATE_RELEASED, &ui_img_menu2_menu2_workout_status_100x100_png, NULL, NULL);
lv_obj_align(imgbtn1, LV_ALIGN_CENTER, 0, 0);
/*Create a label on the image button*/
lv_obj_t * label = lv_label_create(imgbtn1);
lv_label_set_text(label, "Button");
lv_obj_align(label, LV_ALIGN_CENTER, 0, 0);
lv_obj_add_event_cb(imgbtn1, event_cb, LV_EVENT_CLICKED, NULL);
}
主函数调用下面函数即可
lv_example_imgbtn_1();
评论(0)
您还未登录,请登录后发表或查看评论