第 6 章 · 第 38 讲 · 16:43
在人工智能产品里,界面越来越多地由模型直接生成。而模型挑控件基本靠掷骰子,写文案只有一招——逢事写「确定」。你不拦,它就把数据库字段直接端上台演讲。
两个高频病灶:
user_mobile、错误码、Session 端给用户这些毛病单看都不大,叠在一张表单里,用户每一步都在多花力气,而流失就是这么一点点攒出来的。
Alan Cooper 在《About Face 4:交互设计精髓》第 21 章把这些零件逐个讲过一遍,规则清楚得能背下来。本集把它背成口诀,再翻译成能抄进提示词的约束话术。
| 层级 | 能力 | 具体表现 | 验证方式 |
|---|---|---|---|
| L1 选型 | 四句口诀 | 互斥 / 多选 / 立即生效 / 超一屏 四种场景各回各家 | 六个真实场景连连看全对 |
| L2 成本 | 点击成本核算 | 识别下拉与弹窗各自让用户多付了什么 | 说出下拉的先天缺陷 |
| L3 文案 | 按钮携带后果 | 「删除这 3 条」替掉「确定」 | 遮住正文只看标题和按钮仍能安全作答 |
| L4 翻译 | 系统语 → 用户语 | 字段名、错误码、Session 翻成用户的词 | 五条系统语翻译题全对 |
| L5 固化 | 约束话术 | 把规则写进提示词,让模型不再掷骰子 | 生成的表单无需返工改控件 |
能力是单向依赖的:不会 L1 的选型,L2 的成本算不出来;不懂 L3 的按钮规则,L4 的翻译就翻不到「能行动」为止;L5 是前四项的固化出口。
规则记在你脑子里没用,得写进给模型的需求里。把约束话术贴在生成界面的提示词末尾,控件就不再靠模型掷骰子。这是本集最省钱的一条结论。
| 控件 | 什么时候用 | 模型常见误用 |
|---|---|---|
| 单选钮 | 互斥、必选一个、选项一屏放得下 | 该用它的地方给了下拉或复选框 |
| 复选框 | 可多选,或单个的「勾 / 不勾」标记 | 互斥选项也给复选框,勾出矛盾数据 |
| 开关 | 二选一且立即生效的设置项 | 用在要跟表单一起提交的字段上 |
| 下拉 | 选项超过一屏,屏幕装不下的妥协 | 三五个选项也藏进去,凭空加一次点击 |
| 对话框 | 主流程之外:危险、少用、集中一个主题 | 成功提示、常规确认也弹,逢事必弹 |
单选钮的名字来自老式汽车收音机:司机按下一个电台键,前一个键自动弹起,眼睛不用离开路面。互斥、必选一个是它的地盘。成组才有意义——单独一个单选钮点上就取消不掉,第 21 章直接判它无意义。
复选框:勾上做标记,再点取消。方形是它几十年攒下的脸,别改成圆的,圆形会和单选钮撞脸。进阶用法叫「记号」——列表每行配一个复选框,多选状态一眼可见。
开关:拨下去当场变,不用再点保存。第 21 章说它在移动端设置页非常好用。反过来,要跟着表单一起提交的选项就别用开关,因为开关的形态本身就在承诺「立即生效」。
下拉:初始状态只露出当前选中的那一项,其余全部藏起来。它是屏幕装不下时的妥协方案。
| 场景 | 正解 | 模型最可能给的答案 |
|---|---|---|
| 报销单选发票类型(专票 / 普票 / 电子票) | 单选钮平铺 | 下拉 |
| 订阅设置「想收到哪些邮件」 | 复选框 | 单选钮或三个开关 |
| 设置页「深色模式」,一改立刻变色 | 开关 | 两个单选钮 |
| 收货地址选省份(34 个选项) | 下拉 + 输入联想 | 单选钮平铺成一堵墙 |
| 收银台选支付方式(三种) | 单选钮平铺 / 三张大卡片 | 下拉 |
| 注册页「我已阅读并同意条款」 | 单个复选框 | 单独一个单选钮 |
六个场景的错误答案,几乎都是模型最爱给的那个——可见模型的默认选择有多不靠谱。
下拉的先天缺陷:初始状态只显示上次选中的条目,其余选项全部不可见。选项看不见,用户就没法比较,也预估不了这一步要花多久。
每一次把三五个选项收进下拉,都是凭空给用户加一次点击,而这次点击不产生任何新信息,纯粹是为了把原本能看见的东西翻出来。
课程里拿外卖下单页做了对照。同一个「选配送时间」步骤:
方案 B 偷偷用上了一招:默认值兜底。选项可见 + 默认合理,多数用户一秒通过这一步。这正是「防错三板斧」里默认值兜底在控件层的样子。
第 21 章给对话框的定位讲了个厨房比喻:应用是厨房,对话框是食品储藏室——它推动情节,但当不了主角。主要交互放在主窗口,对话框只装主流程之外的东西:危险的、少用的、需要把一个主题的信息集中到一处的。
还有一条容易忽视的细节:功能对话框的标题要用动词,让用户一眼知道自己在确认什么。
| 场景 | 结论 | 依据 |
|---|---|---|
| 清空回收站,200 条永久消失且暂时做不了撤销 | 该弹 | 不可逆又无撤销,确认框是仅剩的防线;标题用动词 |
| 每次保存成功都弹「保存成功」 | 不该弹 | 正常干完活还要用户点一下表扬,等于软件在邀功 |
| 表单没填完点提交,弹窗告知「信息不完整」 | 不该弹 | 防错要前置:禁用提交按钮 + 缺项说明 |
| 导出全部数据,需选格式 / 范围 / 是否含附件 | 该弹 | 主流程之外、不常用、需把一个主题的设置集中起来 |
| 用户正在打字,后台同步完成弹窗告知 | 不该弹 | 弹窗抢走焦点,半句话打进「确定」里 |
不该弹的三种,替代方案都是非模态轻反馈:角落一枚对勾、一条两秒消失的 toast、状态条上的图标。Cooper 管这叫富视觉非模态反馈,第 15 章整章都在讲怎么用它消灭对话框。
第 21 章点名要避开状态切换按钮——音乐播放器那颗「播放 / 暂停」合体键就是代表。它病在哪?
为什么 B 最致命:另外三条都能补救(加大点击区、补文字标签、调动画时长),而状态与动作的歧义是这颗按钮与生俱来的。
可迁移的规律:凡是让用户先猜再点的设计,都是在把判断成本转嫁给用户。控件该省的是用户的点击,不是用户的思考。
数一数你今天点过多少次「确定」。它出现在删除、提交、退出、覆盖、清空的弹窗里,同一个词替一百种后果背书。
问题在于:按钮自己不带答案,答案在正文里。用户必须读完整段话,才知道这一下点的是什么。「确定 / 取消」配对是偷懒,把阅读成本推给了用户。
处方:让按钮把后果带在身上。
| 场景 | 偷懒版 | 携带后果版 |
|---|---|---|
| 清空购物车 | 确定 / 取消 | 清空 12 件 / 先留着 |
| 退出编辑 | 是 / 否 | 保存并退出 / 丢弃改动 |
| 解绑手机号 | 继续 / 返回 | 解绑 138****2046 / 不解绑 |
| 删除 3 封邮件 | 提示 + 确定 / 取消 | 删除这 3 封邮件?+ 留着 / 删除这 3 封 |
副产品:数量和对象一并写进按钮,等于替用户做了最后一次核对。误操作大多发生在「我以为选的是另一批」,按钮把对象报出来,这层误会当场消解。
把弹窗正文遮住,只看标题和按钮,能不能安全作答?
按钮之外,第二个重灾区是名词。界面上写着「字段 user_mobile 校验失败」「该操作违反唯一性约束」,这些词一个用户都不认识——它们是从数据库和日志里直接端出来的。
Cooper 在第 14 章把根子挖了出来:开发者把数据库的需求放在用户的需求前面,软件成了替 CPU 服务的,用户反倒像在替软件打工。
同章还有一条被引用得很多的原则:出错可能不是程序的问题,但是程序的责任。连菜单名都逃不过这条——「文件」这个菜单名都是实现模型的词,发票应用的菜单就该叫「发票」。
| 系统语 | 打扮过的翻译(×) | 人话(√) |
|---|---|---|
DB_CONN_TIMEOUT (10060) | 数据库连接超时,请稍后重试 | 刚才没连上服务器,你写的内容已存在本机,网络恢复后会自动重试 |
字段 user_mobile 校验失败 | 手机号格式不合法,请检查后重新输入 | 手机号少了一位,现在是 10 位,补上就能提交 |
Session 已过期,Token 失效 | 会话凭证已失效,请重新获取访问令牌 | 登录过期了,重新登录就能接着编辑,草稿已经保留 |
404 Not Found: /orders/8291 | 请求的资源不存在,请确认地址是否正确 | 这笔订单找不到了,可能已被撤销。去「全部订单」里看看,或联系客服帮你查 |
| 该操作违反唯一性约束 | 数据重复,操作被拒绝,请修改后重试 | 这个用户名已经有人用了,换一个试试,比如加个数字 |
判别标准:把 Session 翻成「会话凭证」、Token 翻成「访问令牌」,词是中文了,模型还是实现模型。用户的词典里只有「登录」。
翻译要翻到用户能行动为止——这是验收线。「数据重复,请修改后重试」比「违反唯一性约束」好懂一点,但哪个数据重复、跟谁重复、怎么办,一个都没说。
危险 = 用户没读懂也会点下去的那种。
用户处理弹窗的平均耗时读不完一行字,文案模糊的弹窗等于在盲点里放了一把刀。
对照两个都在删客户数据的弹窗:
生成或评审任何带表单的界面时,逐项过一遍。
Session 这类实现模型的词?
控件选择约束:互斥且选项不超过 5 个时用单选钮平铺,禁止用下拉;可多选用复选框;
开关只用于立即生效的设置项;选项超过一屏才允许下拉,并提供输入联想。
对话框只用于主流程之外的功能(危险操作、少用的设置、需要集中一个主题的信息),
功能对话框标题用动词;操作成功用非模态 toast 提示,禁止弹「成功」对话框;
表单校验前置(禁用 + 缺项说明),禁止提交后弹「信息不完整」。
文案约束:按钮文案写明动作和数量,禁用「确定 / 取消」配对;
界面文案禁止出现字段名、错误码、Session 等系统词;
错误文案需交代三要素:用户的词、明确的出路、最要紧的安抚。
本集规则有其适用边界,越界会失效。
约束一:四句口诀管的是选择类控件,不是全部控件。 文本输入、滑块、步进器、日期选择器各有各的规则,本集未覆盖。
约束二:「五个以内平铺」是经验阈值,不是硬性定律。 真正判据是「一屏放得下且用户需要比较」。选项带长说明时,三个选项也可能需要下拉。
约束三:下拉并非原罪。 选项超过一屏、或选项本身是长列表(省份、国家、货币)时,下拉是正解,配输入联想更佳。
约束四:非模态反馈不能承载关键信息。 toast 两秒消失,用户错过就没有第二次机会。涉及不可逆后果的确认,仍须模态对话框。
约束五:按钮携带后果会变长。 「删除这 3 位」比「确定」长,在窄屏或多语言场景下可能换行。需在文案长度与明确性之间做取舍,必要时用图标 + 短文案。
约束六:翻译到「能行动」为止是有成本的。 需要程序侧精确识别错误类型才能给出「少了一位」这种诊断。诊断能力不足时,宁可给保守但诚实的说法,也不要编造细节。
约束七:模型会漂移。 约束话术要贴在提示词末尾且每次都带,不能只说一次。改稿时尤其要复查控件是否被悄悄换回下拉。
控件选对了,界面还得开口说话。这两件事单看都是细节,但细节叠起来就是手感,而手感是用户能感知却说不出来的那部分质量。
来源:xueai.miyang.cn(小山学堂 · 洛小山)
本页内容改编自小山学堂《学 AI 产品,从入门到精通》,为二次演绎配音版。部分交互原则整理自《About Face 4:交互设计精髓》第 14 章、第 21 章(Alan Cooper 等著)。