开关部件组成部分
- 主体(LV_PART_MAIN)
- 手柄(LV_PART_KNOB)
- 指示器(LV_PART_INDICATOR)
开关部件(lv_switch)
- 创建开关部件
lv_obj_t *switch1 = lv_switch_create( parent );
- 添加、清除开关状态
lv_obj_add_state(switch1, LV_STATE_CHECKED | LV_STATE_DISABLED); /* 添加状态:默认打开且不可修改 */
lv_obj_clear_state(switch1, LV_STATE_CHECKED | LV_STATE_DISABLED); /* 清除开关的状态 */
- 获取(判断)开关状态
//LV_STATE_CHECKED:开启状态
//对于想要获取状态需要去事件回调函数内进行获取,因为my_gui()只会进来一次
lv_obj_has_state(switch1, LV_STATE_CHECKED); /* 返回值:bool类型,开 :1;关: 0 */
- 事件触发
//开关的事件触发和按钮的事件触发的code是一样的,根据状态是否变化来进行触发(只有0、1)
lv_obj_add_event_cb( btn, event_cb, LV_EVENT_VALUE_CHANGED,NULL ); /* 添加事件 */