Confirmation Dialog
二次确认框
在执行一个可能后悔的操作之前,弹窗问一句「你确定吗」。
Live Demo
真的可以点你刚才看到的这个:点「删除照片」后弹出「删除 3 张照片?这些照片将移到最近删除,30 天后自动清除。」下面两个按钮:取消 / 删除。
它到底是什么
二次确认的价值不在于「拦截」,而在于「让用户看清后果」。好的确认框会写明具体影响(会删掉什么、无法恢复),而不是干巴巴地问「确定吗?」——后者训练出的是条件反射式的乱点。
Anatomy · 它由什么组成
Title标题
写明后果,不写「提示」
Impact影响说明
「将删除 3 张照片」
Cancel取消
默认焦点
Confirm确认
动词 + 危险色
When to Use
什么时候该用 / 不该用| 情况 | 推荐 |
|---|---|
| 操作不可撤销且影响大 | 用 |
| 误触代价高(删数据、注销、付费) | 用 |
| 同时提供 Snackbar 撤销作为替代 | 用 |
| 操作频繁且容易恢复(清空输入框) | 不用 |
| 可以改成 Undo 就不必拦(删除) | 视情况 |
每个操作都弹确认框,用户会养成「看到弹窗就点第一个按钮」的习惯。
如果能提供 Undo 退路,就别拦——让用户敢做,快速做事,然后给他反悔的机会。
Similar Patterns
别搞混Confirmation Dialog当前
二次确认框
在执行一个可能后悔的操作之前,弹窗问一句「你确定吗」。
Destructive Action
破坏性操作
一旦执行就难以撤销的操作——删除、清除、注销。它的按钮必须是红色的。
一句话区分:在执行一个可能后悔的操作之前,弹窗问一句「你确定吗」。
怎么告诉 AI
三层 Prompt补上组件名和具体内容
删除 3 张照片前弹确认框:标题「删除 3 张照片?」,正文「这些照片将移到最近删除,30 天后自动清除。」,取消为默认焦点,确认按钮红色。
不要只对 AI 说
Bad → Better不要这样对 AI 说
删除前弹个确认框。
改成这样说
删除前弹 alertdialog:标题写明后果「删除 3 张照片?」而非「确定吗」,默认焦点放「取消」,确认按钮用红色动词「删除」,执行后用 Snackbar 给撤销机会。
分享这张卡
社交平台友好把这个 Pattern 做成 3:4(小红书)或 1:1(X / Reddit)的知识卡片,在浏览器里直接导出 PNG,不需要后端。