简介#
我们很高兴地宣布 LVGL Pro v1.1.2 正式发布。本次更新专注于质量、稳定性,以及快速响应用户反馈的问题。放心,我们仍有令人期待的新功能正在开发中。
本版本包含一项破坏性变更:控件 API 属性(getter)此前生成时包含了多余的参数,现已修复。所有 _gen.h 文件会在导出时自动重新生成,但您需要手动更新 [widget].c 文件。详见下文。
破坏性变更:控件 API 属性#
对于使用 API 元素属性的控件,代码生成器此前会错误地添加一个多余的第一参数,即父控件指针:
<api>
<element name="myelement" access="get" type="lv_obj">
<prop name="myprop" type="int" />
</element>
</api>xml现已移除生成签名中多余的 lv_obj_t * 父控件参数:
void my_widget_set_myelement_prop(
lv_obj_t * smart_slider,
lv_obj_t * myelement,
int32_t myprop);cvoid my_widget_set_myelement_prop(
lv_obj_t * myelement,
int32_t myprop);c组件的 C 代码会自动生成,因此此修复对组件无需额外操作。对于控件,您需要手动删除或更新 [widget].c 文件以匹配修正后的函数签名。
所有 [widget]_gen.h 文件会在代码导出时自动重新生成,但您必须手动删除或修复 [widget].c 文件以更正生成的函数签名。
新增功能#
自定义右键菜单#
编辑器新增了带有功能操作的右键菜单,让您更快速地使用常用操作。(#328)
ANSI 控制台颜色#
控制台输出现在使用 ANSI 颜色区分错误、警告和提示信息,便于在开发过程中快速定位问题。(#332)
智能资源转换#
图片和字体转换现在会跳过已经是最新的资源,这意味着更快的迭代速度,尤其适用于资源较多的项目。
变更#
- 切换预览选择时,预览会自动适应屏幕大小。
错误修复#
本版本修复了十余项社区反馈的问题:
- 控件私有头文件:非对象子元素(如
lv_chart_series)现在使用正确的指针类型。 - Subject 更新反馈循环:跳过来源于 LVGL 自身的更新,防止循环触发。
- Inspector 快捷键:Alt 和 Alt + I 切换功能现已正常工作。
- Textarea:字符串和文本类型属性现在会正确显示文本框。
- 测试截图:子文件夹路径解析已修正。
- LVGL Pro 网页链接:已更正为正确的 URL。
- 编辑器崩溃:打开没有
globals.xml文件的项目时不再崩溃。 - 过度 API 继承:扩展组件的 API 继承已减少。
lv_textarea:恢复了缺失的属性和部件选择器。(#295)- 项目概览:现在正确反映组件库的内容和状态。
- Schema 加载:添加组件库时,所有文件现在都会加载到 LVGL Schema 中。
- 浮点值:Subject 字段中的浮点值现在可以正确解析。(#330)
- 翻译功能:修复了多个问题,包括打开项目前不显示翻译、预览中翻译不更新、本地翻译无法显示,以及输入字段稳定性。
- Subject 输入:表单、预览存储和运行时中,超出范围的
min_value/max_value更新现在会被一致地拒绝。 - 空字符串处理:当不存在默认值时,字符串 API 属性现在允许空字符串;默认值也不再错误地覆盖空字符串。
- 文本区域弹出框:现在会打开到点击的属性,而非 schema 中的第一个属性。
- 外部 XML 重新加载:Windows 上现在支持自动重新加载由外部编辑器修改的 XML 文件。(#345)
总结#
v1.1.2 是一个维护版本,但内容非常充实。编辑器更加稳定,控制台更易读,资源转换也更加智能。感谢所有报告问题并为 LVGL Pro 做出贡献的用户!
