用途:该技能为 GPUI 的样式系统、主题管理和视觉设计模式提供系统性指导,适合需要处理界面样式、主题切换或响应式布局的场景。
主要能力:
- 样式 API:提供颜色(rgb、rgba、hsla、命名色)、间距(padding、margin、gap)、尺寸(宽高与百分比)、边框等基础样式方法。
- 布局:基于 Flexbox 的 flex、flex_row、flex_col、items_center、justify_between 等布局能力。
- 主题系统:定义包含颜色、排版、间距与阴影的 AppTheme,提供 light() 与 dark() 两套主题,并可通过 cx.set_global 与 cx.refresh 动态切换主题。
- 响应式设计:通过窗口尺寸判断移动/平板/桌面布局,定义 SM、MD、LG、XL、XXL 断点,并按宽度切换栅格列数。
- 视觉设计模式:提供 Card、Button(Primary、Secondary、Outline、Ghost、Destructive 变体)、Input 等组件示例。
- 样式组合:可复用的 focus_ring、shadow_sm 等 StyleRefinement 函数,以及 when 条件样式。
- 动画与过渡:transition_all、duration、hover、scale、rotate、translate_y 等过渡与变换能力。
使用方式:在组件 render 中通过 cx.global::<AppTheme>() 获取主题,将主题的颜色与间距应用到元素上;通过 cx.window_bounds() 获取窗口尺寸实现响应式;切换主题时调用 cx.set_global(new_theme) 并 cx.refresh()。
适用场景:GPUI 应用的界面样式、主题设计、明暗模式、响应式布局与交互过渡。
限制:资料未提供安装命令、收费或价格信息;示例中的 cx 等上下文参数在部分代码片段中未完整声明,实际用法需结合自身项目结构;资源部分仅给出颜色、排版、间距的通用建议,未提供完整设计规范或外部依赖说明。