v7.3.0 版本中最有趣但非常简单的功能是 lv_event_send_refresh(obj) 和 lv_event_send_refresh_recursive(obj)。它们向一个对象或其所有后代对象发送 LV_EVENT_REFRESH 事件。lv_event_send_refresh_recursive(NULL) 将通知所有现有的对象。
在对象的刷新事件中,开发者可以查看某些变量的当前值并相应地更新对象。例如,将标签的文本更新为测量值,或更新为新选择的语言,或根据布尔变量设置复选框的状态。
要点是,在更新对象之前,您不必检查对象是否存在。只需通知所有对象或某个对象的所有子对象,如果对象存在且实现了其刷新事件,它就会完成其工作。在事件文档中了解更多信息。
新功能#
- 添加
lv_event_send_refresh、lv_event_send_refresh_recursive以便轻松向对象发送LV_EVENT_REFRESH事件 - 添加
LV_MEMCPY_MEMSET_STD以使用标准的memcpy和memset - 添加
lv_tabview_set_tab_name()函数 - 用于更改选项卡的名称 - 添加
LV_THEME_MATERIAL_FLAG_NO_TRANSITION和LV_THEME_MATERIAL_FLAG_NO_FOCUS标志 - 通过添加以下选项减少代码大小:
LV_USE_FONT_COMPRESSED、LV_FONT_USE_SUBPX、LV_USE_OUTLINE、LV_USE_PATTERN、LV_USE_VALUE_STR并应用了一些优化 - 添加
lv_task_get_next
错误修复#
- 如果字形的高度或宽度为零,则不打印缺失字形的警告
- 防止从文本区域重复发送
LV_EVENT_INSERT - 整理颜色选择器控件的外边缘
- 从
lv_tabview_add_tab中删除重复的行 - btnmatrix:处理按钮的组合状态(例如选中 + 禁用)
- textarea:修复 lv_textarea_set_scrollbar_mode 中的拼写错误
- gauge:修复图像指针绘制
- 修复在 _lv_style_list_remove_style 中使用已释放内存的问题
Arduino 库#
核心 LVGL 仓库和 lv_examples 现在可以直接作为 Arduino 库使用:
有关更多信息,请参阅 Arduino README。
新仓库#
- lv_lib_gif:GIF 解码器
- lv_lib_bmp:BMP 解码器
注意:为保持一致性,lv_lib_lodepng 已重命名为 lv_lib_png。
