1_开关

#include "config.h"
TTGOClass *ttgo;
static lv_obj_t * label_text;
static void event_handler(lv_obj_t * obj, lv_event_t event)
{
if(event == LV_EVENT_VALUE_CHANGED) {
if(lv_switch_get_state(obj)){
lv_label_set_text_fmt(label_text, "ON");
}else{
lv_label_set_text_fmt(label_text, "OFF");
}
}
}
void lv_ex_switch_1(void)
{
label_text = lv_label_create(lv_scr_act(), NULL);
lv_label_set_text(label_text, "OFF");
lv_obj_set_auto_realign(label_text, true);
lv_obj_align(label_text,NULL, LV_ALIGN_CENTER, -50,-50);
lv_obj_t *sw1 = lv_switch_create(lv_scr_act(), NULL);
lv_obj_align(sw1, NULL, LV_ALIGN_CENTER, 0, -50);
lv_obj_set_event_cb(sw1, event_handler);
}
void setup()
{
Serial.begin(115200);
ttgo = TTGOClass::getWatch();
ttgo->begin();
ttgo->openBL();
ttgo->lvgl_begin();
lv_ex_switch_1();
}
void loop()
{
lv_task_handler();
delay(5);
}

2_滑块

#include "config.h"
TTGOClass *ttgo;
static lv_obj_t * label_text;
static void slider_event_cb(lv_obj_t * slider, lv_event_t event)
{
if(event == LV_EVENT_VALUE_CHANGED) {
lv_label_set_text_fmt(label_text, "%d",lv_slider_get_value(slider));
}
}
void lv_ex_slider_1(void)
{
label_text = lv_label_create(lv_scr_act(), NULL);
lv_label_set_text(label_text, "0");
lv_obj_set_auto_realign(label_text, true);
lv_obj_align(label_text,NULL, LV_ALIGN_CENTER, 0,20);
lv_obj_t * slider = lv_slider_create(lv_scr_act(), NULL);
lv_obj_set_width(slider,200);
lv_obj_align(slider, NULL, LV_ALIGN_CENTER, 0, 0);
lv_obj_set_event_cb(slider, slider_event_cb);
lv_slider_set_range(slider, 0, 100);
}
void setup()
{
Serial.begin(115200);
ttgo = TTGOClass::getWatch();
ttgo->begin();
ttgo->openBL();
ttgo->lvgl_begin();
lv_ex_slider_1();
}
void loop()
{
lv_task_handler();
delay(5);
}

3_图片按钮


#include "config.h"
TTGOClass *ttgo;
static lv_obj_t * label;
int text_value=0;
static void event_handler(lv_obj_t *obj, lv_event_t event)
{
if (event == LV_EVENT_CLICKED) {
lv_label_set_text_fmt(label, "%d",++text_value);
}
}
void lv_ex_imgbtn_1(void)
{
LV_IMG_DECLARE(wifi);
static lv_style_t style;
lv_style_init(&style);
lv_style_set_image_recolor_opa(&style, LV_STATE_PRESSED, LV_OPA_30);
lv_style_set_image_recolor(&style, LV_STATE_PRESSED, LV_COLOR_BLACK);
lv_style_set_text_color(&style, LV_STATE_DEFAULT, LV_COLOR_BLACK);
lv_obj_t * imgbtn1 = lv_imgbtn_create(lv_scr_act(), NULL);
lv_imgbtn_set_src(imgbtn1, LV_BTN_STATE_RELEASED, &wifi);
lv_imgbtn_set_src(imgbtn1, LV_BTN_STATE_PRESSED, &wifi);
lv_imgbtn_set_src(imgbtn1, LV_BTN_STATE_CHECKED_RELEASED, &wifi);
lv_imgbtn_set_src(imgbtn1, LV_BTN_STATE_CHECKED_PRESSED, &wifi);
lv_imgbtn_set_checkable(imgbtn1, true);
lv_obj_set_event_cb(imgbtn1,event_handler);
lv_obj_add_style(imgbtn1, LV_IMGBTN_PART_MAIN, &style);
lv_obj_align(imgbtn1, NULL, LV_ALIGN_CENTER, 0,0);
label = lv_label_create(lv_scr_act(), NULL);
lv_label_set_text(label, "0");
lv_obj_set_auto_realign(label, true);
lv_obj_align(label,NULL,LV_ALIGN_CENTER, 0,-55);
}
void setup()
{
Serial.begin(115200);
ttgo = TTGOClass::getWatch();
ttgo->begin();
ttgo->openBL();
ttgo->lvgl_begin();
lv_ex_imgbtn_1();
}
void loop()
{
lv_task_handler();
delay(5);
}
