天天看點

LVGL8學習之Image Styles

這一篇來學習一下Image  Style的使用,還是通過codeblock來模拟代碼的運作,代碼如下:

void lv_image_style_test()
{
    static lv_style_t style;
    LV_IMG_DECLARE(img_cogwheel_argb); // 聲明圖檔變量

    lv_style_init(&style); // 樣式初始化
    lv_style_reset(&style); // 重置樣式

    lv_style_set_radius(&style, 5); // 設定樣式圓角
    lv_style_set_bg_opa(&style, LV_OPA_COVER); // 設定樣式背景透明度
    lv_style_set_bg_color(&style, lv_palette_lighten(LV_PALETTE_GREY, 3)); //設定樣式背景顔色,淺灰色

    lv_style_set_border_width(&style, 2); // 設定樣式邊框寬度
    lv_style_set_border_color(&style, lv_palette_main(LV_PALETTE_RED)); // 設定樣式邊框顔色,藍色

    lv_style_set_img_recolor(&style, lv_palette_main(LV_PALETTE_BLUE)); // 設定樣式圖檔重新着色,藍色
    lv_style_set_img_recolor_opa(&style, LV_OPA_50); // 設定樣式圖檔重新着色透明度
    lv_style_set_transform_angle(&style, 300); // 設定樣式transform angle

    lv_obj_t * obj = lv_img_create(lv_scr_act()); // 基于螢幕建立一個對象
    if (obj != NULL)
    {
        lv_obj_add_style(obj, &style, 0); // 給對象添加樣式
        lv_img_set_src(obj, &img_cogwheel_argb); // 對象設定圖檔
        lv_obj_set_size(obj, 100, 100); // 設定對象大小
        lv_obj_center(obj); // 對象居中顯示
    }
}
           

繼續閱讀