uiLitejhksdhkfj/README_zh.md

7.4 KiB
Raw Blame History

GuiLite超轻量UI框架 - 最轻量/最易懂/最稳定的GUI库

badge_build badge_docker badge_platform badge_lincense badge_lincense


GuiLite是什么鬼

  • GuiLite是5千行代码的全平台UI框架,可以完美运行在: iOSAndroidLinuxARM/x86-64Windows包含VRMacDocker和有(无)操作系统的MCU上。
  • GuiLite可以嵌入在iOS、Android、MFC、QT等其他UI系统中让你的界面集百家之长又不失个性。
  • GuiLite与操作系统及第三方图形库无关甚至也可以运行在无OS的单片机环境。
  • GuiLite鼓励混合编程开发者可以用GuiLite接管UI部分用SwiftJavaGolangC#Python开发业务部分。
  • 🔧不鼓励大家全盘接受GuiLite更愿意大家自主定制GuiLite
  • ⚙️希望GuiLite小到足够帮助大家掌握UI工作原理从而摆脱UI框架的束缚构建自己独一无二的UI
  • 👑任何UI框架都不为你我而生你才是自己真正的主人

🔥新功能GuiLite Previewer(所见即所得的GuiLite开发插件)

  • GuiLite Previewer是一个Visual Studio Code插件它可以自动提取源代码的GUI布局信息并实时显示在“预览”页面上(所见即所得)
  • 不需要“拖拽”控件仅通过敲代码就可以完成所有工作例如代码UI编辑编译运行调试
  • 不需要使用庞大的GUI编辑工具或IDE例如Android Studio, Qt designer
  • 不需要使用可扩展标记语言例如xml, xaml GuiLitePreviewer

功能介绍

卓越的跨平台能力

ARM Linux STM32 Without OS
ARM Linux MCU MCU
Windows Mixed Reality Android
Win MR Android
macOS iOS
macOS iOS

支持Docker容器

我们把GuiLite demo做成了Docker映像只需一行命令就可以将最新的GuiLite demo升级/部署/运行在你的设备上了。

  • sudo docker run -it --privileged -v /dev:/dev-share idea4good/gui-lite:latest bash /run.sh

易于定制界面

wallpaper


万国语(unicode)

unicode


“换肤”功能

multi-theme


IoT物联网功能

  • 上报“编译/运行”情况至“云端”:
    BuildInfo
  • 同步“运行数据”至“云端”:
    DataOnCloud

快速上手

GuiLite只是一个框架本身并不能生成UI。为了能够展示如何用GuiLite开发App我们提供了一些实例程序给大家参考。

  • 实例程序的代码在这里
  • 实例程序的功能说明:
实例名称 支持的平台 功能简介 编译方法 难度
HelloParticle Windows, Linux, STM32F103, STM32F429 粒子效果的应用 编译/运行
HelloStar Windows, Linux, STM32F103, STM32F429 星空效果的应用 编译/运行
HelloGuiLite Windows, Linux 初始化GuiLite加载资源布局界面元素按钮响应 编译/运行 ★★
HelloWidgets Windows, Linux 用于演示基本控件的使用方法 编译/运行 ★★
HelloMario Windows, Linux, STM32F103, STM32F429 多图层的UI系统 编译/运行 ★★
HelloNoTouch Windows, Linux, STM32F103, STM32F429 用于非触摸屏场景通过硬按键进行UI“导航” 编译/运行 ★★
HelloFont Windows, Linux 显示多种语言(不限:中、英文) 编译/运行 ★★
HelloAnimation Windows, Linux 动画的应用 编译/运行 ★★
HelloSlide Windows, Linux 滑屏界面的应用 编译/运行 ★★★
HelloWave Windows, Linux, STM32F103, STM32F429 波形控件的应用,及单片机移植办法 编译/运行 ★★★
HostMonitor iOS, Mac, Android, Windows, Linux 创建复杂界面,扩展自定义控件,适配全平台 编译/运行 ★★★★

开发文档

GuiLite是最简单易学的GUI库。

  1. 只有5千行C++代码
  2. 只使用C++的基本特性(类和虚函数),不涉及复杂语法
  3. 图形绘制以描点为基础,不使用任何算法
  4. 设计简单配有丰富的文档和实例程序遇到问题可以在QQ群获得帮助

学习方法

  1. 外围 - 成功编译GuiLite库
  2. 前戏 - 成功运行HelloXXX实例程序
  3. 交流 - 研读/修改100+行的HelloXXX/UIcode/UIcode.cpp源代码
  4. 深交 - 研读gui目录下的代码
  5. 攻核 - 研读core目录下的代码
  6. 分家 - 丰富扩展自己的UI功能

视频链接:

镜像代码仓库

GitHub链接

致谢

  • 感谢开发者群的所有同学是你们塑造了今天的GuiLite也欢迎新的大神/小白加入我们。
  • 感谢来自码云用户的捐赠,您的每一分钱都会用来帮助急需帮助的中国儿童或家庭。