您当前的位置: 首页 > 

仙剑情缘

暂无认证

  • 0浏览

    0关注

    333博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

switch button for little vGL

仙剑情缘 发布时间:2020-02-20 16:46:12 ,浏览量:0

  • switch开关回调处理函数
    
    static void swithc_event_handler(lv_obj_t* obj, lv_event_t event)
    {
        if (event == LV_EVENT_VALUE_CHANGED)
        {
            printf("state:%s\n", lv_sw_get_state(obj) ? "on" : "off");
        }
    }
  • switch开关实现
    void switch_button_demo(void)
    {
        /*Create styles for the switch*/
        static lv_style_t bg_style;
        static lv_style_t indic_style;
        static lv_style_t knob_on_style;
        static lv_style_t knob_off_style;
        lv_style_copy(&bg_style, &lv_style_pretty);
        bg_style.body.radius = LV_RADIUS_CIRCLE;
        bg_style.body.padding.top = 6;
        bg_style.body.padding.bottom = 6;
        bg_style.body.main_color = LV_COLOR_RED;
        bg_style.body.grad_color = LV_COLOR_RED;
    
        lv_style_copy(&indic_style, &lv_style_pretty_color);
        indic_style.body.radius = LV_RADIUS_CIRCLE;
        indic_style.body.main_color = indic_style.body.grad_color = LV_COLOR_GREEN;
        indic_style.body.padding.left = 0;
        indic_style.body.padding.right = 0;
        indic_style.body.padding.top = 0;
        indic_style.body.padding.bottom = 0;
    
        lv_style_copy(&knob_off_style, &lv_style_pretty);
        knob_off_style.body.radius = LV_RADIUS_CIRCLE;
        knob_off_style.body.shadow.width = 4;
        knob_off_style.body.shadow.type = LV_SHADOW_BOTTOM;
        knob_off_style.body.main_color = knob_off_style.body.grad_color = LV_COLOR_BLUE;
        lv_style_copy(&knob_on_style, &lv_style_pretty_color);
        knob_on_style.body.radius = LV_RADIUS_CIRCLE;
        knob_on_style.body.shadow.width = 4;
        knob_on_style.body.shadow.type = LV_SHADOW_BOTTOM;
        knob_on_style.body.main_color = knob_on_style.body.grad_color = LV_COLOR_BLUE;
    
        /*Create a switch and apply the styles*/
        lv_obj_t *sw1 = lv_sw_create(lv_scr_act(), NULL);
        lv_sw_set_style(sw1, LV_SW_STYLE_BG, &bg_style);
        lv_sw_set_style(sw1, LV_SW_STYLE_INDIC, &indic_style);
        lv_sw_set_style(sw1, LV_SW_STYLE_KNOB_OFF, &knob_off_style);
        lv_sw_set_style(sw1, LV_SW_STYLE_KNOB_ON, &knob_on_style);
        lv_obj_set_width(sw1, 80);
        lv_obj_align(sw1, NULL, LV_ALIGN_CENTER, 0, -50);
        lv_obj_set_event_cb(sw1, swithc_event_handler);
    
    }
  • 调用switch_button_demo函数,编译运行

 

关注
打赏
1658017818
查看更多评论
立即登录/注册

微信扫码登录

0.0550s