ZeroUI 是一款面向 Android 平台的轻量级 SDUI SDK。
它的核心功能非常直接:客户端在获取到一份协议后,能够根据协议内容渲染出对应的页面,并处理组件、布局、状态、交互、请求及主题等一系列能力。
简而言之,你可以将 ZeroUI 视为一个“按说明书搭建页面”的工具。服务端负责提供页面描述,Android 客户端则负责将其稳定、准确地呈现出来。
以下截图来自 ZeroUI Demo 中的 Showcase 页面,展示了当前 SDK 已覆盖的核心能力。

Showcase 是什么
Showcase 是 ZeroUI 的功能演示集合,也可以理解为 SDK 的能力清单。
它将常见的 SDUI 能力划分为以下几个模块:
- Components(组件)
- Layout and lists(布局与列表)
- Interaction and state(交互与状态)
- Request and data(请求与数据)
- Skin and tones(主题与样式)
每个模块对应一个相对独立的能力集合。这样的划分非常清晰:如果你想了解组件渲染能力,可以查看 Components;如果想了解状态管理与交互,可以进入 Interaction and state;而请求与数据绑定相关功能,则集中在 Request and data 部分。
Components:基础组件
实现 SDUI 的第一步,是确保基础组件的渲染足够稳定。
ZeroUI 目前支持常见的 UI 元素,例如文本、按钮、卡片、图片、图标、开关、输入框等。

这些组件本身并不复杂,但它们是整个 SDK 的基石。只有组件渲染稳定可靠,后续的布局、状态管理与数据绑定才有意义。
在这一部分,Showcase 主要演示 ZeroUI 如何根据协议,将不同类型的组件渲染到 Android 页面上。
Layout and lists:布局和列表
有了基础组件之后,下一步就是如何将它们合理地组织起来。
ZeroUI 支持常见的布局能力,包括 Column、Row、Spacer、Alignment、Weight,以及 LazyColumn、LazyRow、forEach 等列表与重复渲染能力。

这部分能力决定了 ZeroUI 能否从“渲染几个孤立组件”进阶到“组织一个完整页面”。
例如,一个设置页面、一个卡片流、或一个横向推荐列表,本质上都需要依赖布局与列表能力来实现。
Interaction and state:交互和状态
页面不能只用于展示,还需要响应用户的操作。
ZeroUI 提供了一系列基础的状态管理与事件处理能力,例如 setState、increment、toggle、batch、conditions、dialog、toast、track、navigation 等。

这些能力使得页面能够处理点击、切换、条件展示、弹窗、提示、埋点以及页面跳转等交互。
可以这样理解:协议不仅描述了“页面长什么样”,还可以描述“用户操作后会发生什么”。
Request and data:请求和数据
许多动态页面都需要加载远程数据。
ZeroUI Showcase 中也包含了与请求相关的演示,涵盖 HTTP 请求、onMount 自动加载、成功与失败状态处理、事件值传递,以及 dotted-path 数据绑定等。

这部分能力使得页面可以在展示时自动发起数据请求,并将接口返回的结果绑定到具体的组件上。
对于配置页、活动页、详情页、表单页等场景,请求与数据绑定是非常关键的一环。
Skin and tones:主题和样式
除了结构与交互,页面还需要统一的视觉风格。
ZeroUI 通过 skin tokens 来管理常见的样式属性,例如颜色、背景、文本样式、圆角、间距、按钮与卡片风格等。

这种方式可以减少协议中的样式硬编码,实现页面结构与视觉风格的分离维护。
同一份页面协议,在不同的 skin 配置下可以呈现出不同的视觉效果。
ZeroUI 适合什么场景
ZeroUI 更适合那些轻量、灵活、变化较快的页面场景,例如:
- 运营活动页
- 配置页
- 设置页
- 简单表单
- 动态卡片
- 实验性功能
- 简单详情页
它并非旨在替代所有原生页面。对于动画复杂、交互性强、性能要求高的核心页面,原生开发仍然是更合适的选择。
ZeroUI 的定位更接近于:为那些需要灵活调整、但不值得频繁发版的页面,提供一个轻量级的动态渲染方案。
总结
ZeroUI Showcase 展示了 SDK 当前的核心能力:组件、布局、列表、状态、交互、请求、数据绑定以及主题样式。
作为一款轻量级的 Android SDUI SDK,ZeroUI 注重协议简洁、接入成本低、能力实用,以及在 Android 端的稳定渲染。
随着协议与组件能力的持续完善,未来它将能够逐步承接更多轻量动态页面的场景。
ZeroUI:用协议描述页面,用 Android 原生能力渲染页面。
正在加载评论...