anyuianyui
anyui-LIVE
anyui
反馈问题
  • English
  • 中文
anyui-LIVE
anyui
反馈问题
  • English
  • 中文
  • 介绍

    • 介绍
  • 快速开始

    • 快速开始
  • 工作区

    • 工作区
  • 编辑器

    • 概览
    • 工具栏
    • 导航器
    • 检查器
    • 状态栏
    • 设置
    • 画布
    • 预览
    • 资源管理
    • 代码查看器
    • 历史
  • 智能体
  • 桌面版
  • 主题

    • 图片
    • 字体库
    • 布局
    • 符号
    • 全局样式
    • 动态 LVGL 版本
    • 动态显示尺寸变更
    • 重置屏幕尺寸
    • 代码生成
    • 移植
    • 模拟器
    • 国际化
  • 常见问题

代码生成把画布中的设计转换成可在目标设备上运行的 C 源代码。本指南介绍代码生成的功能、配置选项与集成方式。

概述

在编辑器中完成界面设计后,anyui-LIVE 会生成界面实现,并把转换后的资源写入 generated/ 输出目录。生成的代码自成一体,可以直接集成到项目中使用。

本文只介绍生成流程本身,涉及的资源定义见图片指南与字体库指南。

生成的输出

代码生成会输出以下内容:

输出描述
界面源文件实现每个界面以及 setup_ui() 入口的 C 文件,位于 generated/。
资源源码转换后的图片与字体,位于 generated/。
头文件界面、组件以及生成变量的声明。
自定义事件文件custom/custom_event.h 与 custom/custom_event.c,用于编写你自己的事件声明与处理逻辑。
项目文件位于导出根目录,例如 Makefile、lv_conf.h,以及在对应版本中设置窗口尺寸的 main.c。

大部分输出都由工具自动生成。通常不应手动修改 generated/ 下的文件,而应回到编辑器修改设计后重新生成。例外是 custom/custom_event.h 与 custom/custom_event.c,它们用于编写自定义事件代码;在桌面应用中,后续重新导出会保留你在这两个文件中的修改。至于 lv_conf.h、main.c 这类导出根目录下的项目文件,则继续用于保存项目接入和设备配置。

导出时,anyui-LIVE 会先重新生成源码,因此输出始终对应当前设计。在桌面应用中,这也会同步清理项目文件夹中过期的生成文件,避免已删除的界面、字体与图片继续参与编译。

导出

  • 网页版 - 导出 会重新生成源码包,并下载以项目名、目标版本与导出时间命名的 ZIP 压缩包。
  • 桌面应用 - 导出 会把文件直接写入目标版本对应的导出文件夹,无需解压 ZIP。参见设置与桌面应用。

桌面应用还可以编译导出的代码并运行模拟器,参见模拟器。

配置选项

代码生成的行为由项目配置控制:

选项描述
分辨率生成界面布局时使用的目标分辨率。
色深随项目保存,用于运行时配置(8 位、16 位或 32 位);图片解码支持尚在计划中。
LVGL 版本生成代码时使用的 LVGL 版本。
导出文件夹仅桌面应用:各版本写入生成源码的位置。

上述选项的配置位置见项目设置。

集成方式

生成代码通过以下入口与系统集成:

  • setup_ui() - 在你的应用中调用它,初始化界面。
  • generated/ - 将这些文件复制到你的项目构建中。

将生成代码迁移到目标设备就是围绕这些入口展开的,具体步骤见移植指南。

相关指南

  • 图片 - 图片资源的转换方式。
  • 字体库 - 字体库的转换方式。
  • 工作区 - 创建并配置项目。
  • 概览 - 代码生成所处理的界面。
  • 代码查看器 - 在编辑器中阅读生成的源码。
  • 预览 - 预览执行的生成代码。
  • 移植 - 将生成代码集成到目标项目中。
  • 模拟器 - 在本地运行生成的代码。
Prev
重置屏幕尺寸
Next
移植