UI设计工具文档UI设计工具文档
反馈
  • AC791
  • AC792
  • AC63
  • GPMCU
  • AD14/15/17/18/AD104
  • AD16
  • AD24
  • AC82
  • AW30
  • AW31
反馈
  • AC791
  • AC792
  • AC63
  • GPMCU
  • AD14/15/17/18/AD104
  • AD16
  • AD24
  • AC82
  • AW30
  • AW31
  • 1.工具前言

    • 1.1.工具首页
    • 1.2.前言说明
  • 2.快速使用

    • 2.1.快速使用
    • 2.2.快速上手
    • 2.3.板子配置
    • 2.4.视频教程
    • 2.5.硬件资料
  • 3.控件说明

    • 3.1.控件说明
    • 3.2.基础控件

      • 页面
      • 按钮
      • 图片按钮
      • 标签
      • 图片
      • 文本框
      • 开关
      • 数字微调器
      • 复选框
      • 下拉框
      • 进度条
      • Lottie动画
      • 帧动画
      • 图表
      • 滑动条
      • 弧线
      • 仪表盘
    • 3.3.菜单控件

      • 圆弧菜单
      • 齿轮菜单
      • 列表菜单
      • 曲线菜单
      • 网格菜单
      • 万花筒菜单
      • 多边形菜单
    • 3.4.容器控件

      • 通用容器
      • Flex布局
  • 4.高级功能

    • 4.1.时间轴动画
    • 4.2.模型绑定
    • 4.3.资源管理
    • 4.4.国际化
    • 4.5.硬件仿真
    • 4.6.自动化测试
    • 4.7.控件组
    • 4.8.菜单管理
    • 4.9.页面管理
    • 4.10.动态页面
  • 5.插件系统

    • 5.1.插件说明
    • 5.2.开发指南
    • 5.3.字体合并
    • 5.4.图片编辑
    • 5.5.截图
    • 5.6.项目合并
    • 5.7.项目属性编辑
    • 5.8.视频转图片
  • 6.使用案例

    • 6.1.倒计时案例
  • 7.常见问题

    • 7.1.问题说明
    • 7.2.编译问题
    • 7.3.LVGL问题
    • 7.4.仿真问题
    • 7.5.UI工具问题
    • 7.6.其他问题
  • 8.工具杂项

    • 8.1.杂项1
    • 8.2.杂项2

编译问题

本章目录
  • 1. 编译出现 Error occurred during initialization of VM 错误
  • 2. 编译出现 The C compiler identification is unknown 错误
  • 3. 编译成功,但是仿真程序闪退
  • 4. 打包失败,提示转换图片资源失败
  • 5. 相同图片,却生成了多个图片资源
  • 6. 通过自定义代码修改控件文本后出现部分字体乱码显示不全
本章正文

编译出现 Error occurred during initialization of VM 错误

  • 原因:UI工具自带的JRE工具链出现问题,部分文件被删除或者损坏。
  • 解决方法:重新安装UI工具,或者重新安装JRE。

提示

在使用一些杀毒软件清理大文件时,可能会误删JRE的一些文件(如:rt.jar),导致UI工具无法正常编译。

编译出现 The C compiler identification is unknown 错误

  • 原因:UI工具自带的编译器 mingw730 出现问题,部分文件被删除或者损坏。
  • 解决方法:重新安装UI工具。

提示

如果重新安装UI工具后,问题依旧存在,请在UI工具上反馈给我们。

编译成功,但是仿真程序闪退

  • 原因1:缺少相关的资源文件(字体、图片等),仿真程序读取资源文件失败,导致闪退。
  • 解决方法:请先检查是否有进行“打包”操作,如果有,请检查打包是否成功,资源文件是否存在。
// 可能出现的错误信息
[Error] (8729.953, +0)   lv_font_load_bin: lv load file data from flash error   (in lv_font_loader_bin.c line #36)
[Error] (8729.953, +0)   lv_font_montserratMedium_22_file: Load Fnt Font Failed A:\ ... \ui_prj\dvr_800x480\ui_res\rle\font\1000000f.rle      
        (in gui_fonts.c line #287)
  • 原因2:程序逻辑中存在错误,出现访问空指针等问题,导致程序闪退。
  • 解决方法:请检查程序逻辑,排查问题。

提示

如果是自动生成的代码(generated目录下的文件)导致的异常,请在UI工具上反馈给我们。

打包失败,提示转换图片资源失败

  • 原因:部分图片资源的文件格式不支持。
  • 解决方法:可以尝试将转换失败的图片资源,转换为RGBA的PNG格式,再进行打包。或者换其他图片资源。如果有其他问题,请在UI工具上反馈给我们。
// 可能出现的错误信息
pngquant Unable to convert indexed image fileD:\ ... \import\image\video_page\USB\s_PC.png

相同图片,却生成了多个图片资源

这里以 qrcode.jpg 为例,通过查看 generated/gui_res/res_common.h 文件中,可以看到在这个项目中,使用 qrcode.jpg 生成了三个图片资源。

typedef enum {
	GUI_RES_EMPTY_HOME_IMG_2_PNG = 0x4B000000,   //E:\workspace\Application46\import\image\empty.png
	GUI_RES_QRCODE_JPG = 0x4B000001,   //E:\workspace\Application46\lvgl-simulator\board\ui_res\flash\bin\image\4b000001.zip
} GUI_RES_ID;

typedef enum {
	RES_QRCODE = 0x74000002,   //E:\workspace\Application46\lvgl-simulator\board\ui_res\flash\bin\image\74000002.zip 258x258
} RES_ID;
  • 原因:在项目中,当多个控件使用 qrcode.jpg 图片资源时,但压缩配置项却有所不同时,那么就会生成多个对应压缩配置的图片资源。比如,上面的 GUI_RES_EMPTY_HOME_IMG_2_PNG 和 GUI_RES_QRCODE_JPG 。在 工程 -> 图片 添加的图片资源,即使图片的压缩配置项相同,也会生成独立的图片资源。上面的 RES_QRCODE 正是通过 工程 -> 图片 添加的图片资源。

通过自定义代码修改控件文本后出现部分字体乱码显示不全

  • 原因:打包后的字库中没有这部分字体
  • 解决方法:手动添加字库
上一页
7.1.问题说明
下一页
7.3.LVGL问题