Figma 实战:用 Auto Layout + 变量做可复用按钮组件(从 0 到交付)

你将得到什么(完成标准)

完成后你会得到一套“可直接放进组件库”的按钮:支持多尺寸(S/M/L)、多类型(Primary/Secondary/Tertiary)、多状态(Default/Hover/Pressed/Disabled)、可选图标(左/右),并且有清晰的命名与交付说明。

准备:建立按钮的设计变量(Variables)

1)新建一个 Variables 集合(例如:Button)。

2)创建颜色变量:

• btn/bg/primary、btn/bg/secondary、btn/bg/tertiary

• btn/text/onPrimary、btn/text/onSecondary、btn/text/onTertiary

• btn/border/secondary(如需描边)

3)创建尺寸变量(Number):paddingX、paddingY、radius、gap、height。

建议给 S/M/L 三套值,后面用 Variant 来切换。

步骤 1:用 Auto Layout 搭建按钮骨架

1)画一个 Frame,开启 Auto Layout(水平)。

2)对齐方式选“居中”,间距(gap)绑定变量。

3)左右 padding 绑定 paddingX,上下 padding 绑定 paddingY。

4)高度建议用固定 height(或用 padding 形成高度),圆角 radius 绑定变量。

步骤 2:放入内容层(图标 + 文案)并做自适应

1)在按钮里放一个 Icon(可选)和一个 Text。

2)Text 的 Auto Layout sizing 设置为“内容决定宽度”(Hug contents)。

3)整个按钮容器建议设置为 Hug contents(宽度),这样文本变化不会撑坏结构。

4)给 Icon 设置固定尺寸(如 16/20),并确保与文字基线视觉居中。

步骤 3:制作组件与变体(Variants)

1)将按钮 Frame 转为 Component。

2)创建 Variants(推荐属性):

• Type:Primary / Secondary / Tertiary

• Size:S / M / L

• State:Default / Hover / Pressed / Disabled

• Icon:None / Left / Right

3)命名建议:Button/Type=Primary,Size=M,State=Default,Icon=None。

步骤 4:绑定颜色与描边(让 Type + State 真正可用)

1)背景色:按 Type 绑定到对应的变量(例如 Primary 用 btn/bg/primary)。

2)文字色:按 Type 绑定到对应的文字变量(例如 onPrimary)。

3)Secondary/Tertiary 如需描边:stroke 颜色绑定 btn/border/secondary;背景可透明或浅色。

4)State(Hover/Pressed/Disabled):最稳妥的做法是为每个 Type 再准备 state 变量(如 btn/bg/primary/hover)。如果项目不复杂,也可直接在变体里覆写颜色,但后期维护成本更高。

步骤 5:用 Component Properties 做开关(可选但强烈推荐)

1)为 Icon 图层创建布尔属性(显示/隐藏)。

2)为文案创建 Text 属性(让使用者直接改按钮文案)。

3)如果有 Loading:放一个 Spinner 组件,做一个 Boolean 属性“Loading”,并在 Loading=true 时隐藏文字/图标、显示 Spinner。

步骤 6:常见坑位检查清单(发布前自检)

• Auto Layout:按钮容器为横向,居中对齐;文本为 Hug;图标固定大小。

• Spacing:gap/padding/height 统一由变量控制(避免手改)。

• 对比度:Primary 文字必须满足可读性;Disabled 状态不要仅靠透明度,最好同时调亮/调灰。

• 命名:Type/Size/State/Icon 四个属性清晰一致,避免混用中文/英文。

交付建议:给开发的 3 句说明

1)按钮高度与内边距按 Size(S/M/L)走,文案不换行。

2)Type 控制配色;State 控制交互;Disabled 时不响应点击。

3)图标与文字间距固定为 gap,图标位置由 Icon 属性决定。

扩展:把按钮升级成完整“按钮体系”

你可以在同一套变量下继续增加:Icon Button(纯图标)、Split Button(带下拉)、Danger(危险操作)、 Button(链接样式)。只要坚持“变量控制 + 变体组合 + 属性开关”,组件库会越做越稳。

用户评论 (0)

登录后参与讨论

立即登录 注册账号

暂无评论,快来抢沙发吧~

操作成功