xuexiangjys / XUI
https://github.com/xuexiangjys/XUI/wiki/%E9%A1%B9%E7%9B%AE%E7%AE%80%E4%BB%8B
XUI是一个简洁而又优雅的Android原生UI框架,解放你的双手!
特征
- 简洁优雅,尽可能少得引用资源文件的数量,项目库整体大小不足1M(打包后大约644k)
- 组件丰富,提供了绝大多数我们在开发者常用的功能组件。
- 使用简单,为方便快速开发,提高开发效率,对api进行了优化,提供一键式接入。
- 样式统一,框架提供了一系列统一的样式,使UI整体看上去美观和谐。
- 兼容性高,框架还提供了3种不同尺寸设备的样式(4.5英寸、7英寸和10英寸),并且最低兼容到Android 17, 让UI兼容性更强。
- 扩展性强,各组件提供了丰富的属性和样式API,可以通过设置不同的样式属性,构建不同风格的UI。
idea4good / GuiLite
https://github.com/idea4good/GuiLite/blob/master/documents/HowToWork-cn.md
基本原理
GuiLite只做两个工作:界面元素管理和图形绘制。
界面管理包括:
- 添加/删除界面元素(例如:按钮,标签,对话框等控件),设置对应的文字及位置信息
- 用户输入消息传递:根据用户输入寻找受影响的界面元素,并回调响应的处理的处理函数
- 用户自定义消息传递:用户可以自定义消息响应函数,并自主产生消息;当消息产生时,对应的响应函数会被调用
图形绘制包括:
- 基本的点线绘制,例如:画点,矩形,横线,竖线等
- 设置绘制图层,如果需要多个图层,在基本点线绘制时,需要给出图层的索引值
- 图层处理,在图层界面发生变化的时候(例如:打开/关闭对话框),GuiLite将决定各个图层上的像素点,哪个会被最终显示在屏幕上
👉注意:图形绘制不依赖界面管理,可以独立的存在,例如,在资源有限的单片机环境,有时候不需要界面元素管理,而直接进行图形,文字的绘制。
https://github.com/idea4good/GuiLite/blob/master/README_zh.md
輕-快-容
-
✂️轻量: 4千行C++代码,0依赖,单一头文件库(GuiLite.h)
-
⚡超快: 高效渲染,单片机上也能流畅运行
-
👫🏻兼容: 完美兼容第3方GUI框架(Qt/MFC/Winform/Cocoa/Web),现有Qt/MFC代码可以继续使用
-
⚙️️最低硬件要求:
Processor Disk/ROM space Memory 24 MHZ 29 KB 9 KB
跨平臺
- 支持的操作系统:iOS/macOS/WatchOS,Android,Linux(ARM/x86-64),Windows(包含VR),RTOS... 甚至无操作系统的单片机
- 支持的开发语言: C/C++, Swift, Java, Javascript, C#, Golang...
- 支持的第3方库:Qt, MFC, Winforms, CoCoa...