C语言lvgl中 设置了switch的点击后的样式 如何重置这个样式
时间: 2024-11-09 09:18:44 浏览: 12
在LVGL (LittlevGL) 中,当你设置了开关按钮(`lv_obj_t *btn`)的点击样式后,如果你想重置它的样式回到默认状态,可以使用LV_obj_set_style_prop() 函数结合LV_STYLE_STATE_PRESSED 来设置特定状态的样式。
首先,你需要获取到当前按钮的状态风格变量,它通常是一个指向 `lv_style_t` 结构体的指针,可以通过 `lv_obj_get_style()` 获取。然后,你可以设置 `LV_STYLE_STATE_PRESSED` 对应的属性(比如颜色、背景等)回原始值:
```c
// 假设 btn_style 是之前设置按钮样式的样式结构体
const lv_style_t *original_style = &lv_style_plain; // 这里假设你想恢复成原生样式
// 如果你想将点击样式恢复为默认(无突出显示)
void reset_press_style(lv_obj_t *btn) {
lv_obj_set_style(btn, original_style, LV_STYLE_STATE_PRESSED);
}
// 或者如果原始样式有特定的颜色等属性
LV_COLOR_t default_color = LV_COLOR_WHITE;
lv_obj_set_style_color(btn, original_style, LV_STYLE_STATE_PRESSED, LV_COLOR_ID, default_color);
// 清楚所有样式更改
lv_style_copy(btn_style, original_style); // 使用复制操作来完全清除之前的所有自定义样式
阅读全文