通知文本的 UX 设计 - 应用内通知、Toast 和 Banner 的最佳字数

约 9 分钟阅读

应用内通知、Toast 消息和 Banner 通知是在不中断用户操作流程的情况下传递信息的 UI 组件。然而,在显示时间有限的 Toast 中塞入长文,或 Banner 通知的字数太少导致无法传达含义,这类字数设计失败在日常中屡见不鲜。推送通知的字数设计受 OS 层面限制的约束,而应用内通知由开发者自由设计,因此适当的字数判断更为重要。

通知组件分类与基本字数设计

应用内通知组件按显示时间、显示位置和是否需要用户操作进行分类。需要根据各组件的特性进行相应的字数设计。

组件显示时间显示位置是否需要操作推荐字数用途
Toast3-5 秒屏幕底部或顶部不需要 (自动消失)15-40 字操作成功/失败确认
Snackbar5-10 秒屏幕底部可选 (带操作按钮)20-50 字确认 + 撤销
Banner持续 (手动关闭)屏幕顶部需要 (关闭按钮)30-80 字重要公告、系统状态
内联提示持续内容区域内不需要40-120 字表单错误、注意提醒
模态对话框持续 (直到操作)屏幕中央需要 (确认/取消)50-200 字重要确认、破坏性操作警告
通知中心 (应用内)持续 (列表)专用页面不需要40-100 字历史通知列表

字数限制最严格的是 Toast。在 3-5 秒的显示时间内传达内容,日语 15-40 字是实用上限。人类每秒可阅读约 10-15 个日语字符,5 秒的 Toast 最多可读约 75 字。但考虑到用户注意到 Toast 后开始阅读的延迟 (约 1-2 秒),实际可读字数限制在 30-45 字。

Toast 消息的字数设计 - 3 秒内传达的技术

Toast 消息作为用户操作的即时反馈。"已保存""已复制""已发送"等简短确认消息是典型用途。

模式字数示例评价
仅动词3-5 字"已保存"○ 最简洁但不清楚保存了什么
对象 + 动词8-15 字"草稿已保存"◎ 对象明确且简洁
对象 + 动词 + 补充15-30 字"草稿已保存。自动保存每 5 分钟执行一次"△ 对 Toast 来说太长
图标 + 动词3-8 字"✓ 保存完成"○ 图标增强可见性

"对象 + 动词"模式 (8-15 字) 是 Toast 消息的最佳字数范围。明确对象可以让用户在多个操作并行时 (如上传文件的同时保存设置) 准确判断哪个操作已完成。

在 Toast 中添加"撤销"按钮时,应设计为 Snackbar 并将显示时间延长至 5-10 秒。Gmail 的"邮件已发送 - 撤销"是这种模式的典型案例。包含撤销按钮时,消息文本应控制在 20 字以内,并确保按钮有足够的点击区域。

Banner 通知的字数设计 - 持续显示的信息密度

与 Toast 不同,Banner 通知会持续显示直到用户手动关闭。因此可以包含更多信息,但由于持续占用屏幕有效区域,字数过多会妨碍内容浏览。

Banner 通知的字数根据显示位置和用途有不同的最佳值。

Banner 类型推荐字数示例操作按钮
信息 Banner (Info)30-60 字"新功能:深色模式现已可用""试试看"/"关闭"
警告 Banner (Warning)30-70 字"您的支付方式即将到期,请更新""更新"/"稍后"
错误 Banner (Error)30-80 字"服务器连接不稳定,部分功能受限""重试"/"详情"
成功 Banner (Success)20-50 字"套餐升级已完成""查看详情"/"关闭"
Cookie 同意 Banner50-120 字"本站使用 Cookie 以提升您的体验""同意"/"设置"

Cookie 同意 Banner 因 GDPR 的影响在全球网站中普及,但也是字数设计失败最多的组件。为满足法律要求而塞入 200 字以上说明文的 Banner 会占据屏幕三分之一以上,严重妨碍内容访问。Cookie Banner 正文应控制在 50-120 字,详情通过"Cookie 政策"页面的链接提供。

通知的层级设计 - 紧急程度与字数的关系

根据通知的紧急程度选择适当的组件和字数的层级设计至关重要。错误消息设计中介绍的重要度分类也适用于通知全般。

紧急程度推荐组件字数示例用户操作
低 (确认)Toast10-25 字"设置已保存"不需要
中 (注意)Snackbar / Banner20-60 字"存储使用量已达 80%"可选
高 (警告)Banner / 内联提示30-80 字"需要安全更新,请在设置中更新"建议
紧急 (立即处理)模态对话框50-150 字"有未保存的更改。确定不保存就离开吗?"必须

对低紧急度通知使用长文或以模态对话框显示,会产生"狼来了"效应。不重要的通知频繁中断用户操作,真正重要的通知也会被忽视。严格匹配通知紧急度与字数、组件选择,是维护整个通知系统可信度的关键。

作为微文案的通知文本

通知文本是 UX 写作中"微文案"的典型代表。需要在短小的字数中凝缩情况说明、情感关怀和下一步行动指引的技术。

将有效微文案原则应用于通知文本:

设计系统中的通知文本指南

在大型应用中,多个团队独立创建通知文本,导致字数和语气不一致。将通知文本指南纳入设计系统可以维护一致性。

指南项目规则示例
最大字数Toast:40 字,Banner:80 字,模态:200 字通过 Lint 规则自动检查
句末表达统一为"已……""请……""已保存""请更新"
标点Toast 不加句号,Banner 以上加句号"已保存" vs "需要更新。"
图标使用成功:✓,警告:⚠,错误:✕,信息:ℹ在文本前放置图标
操作按钮以动词开头,8 字以内"更新""查看详情""关闭"
技术术语面向用户的文本中禁止使用"HTTP 500"改为"服务器错误"

Material Design 3 指南规定 Snackbar 文本为"1-2 行"。按每行约 40 字 (英语) 计算,日语约为 30-60 字。Apple 的 Human Interface Guidelines 规定 Alert 消息为"1-2 句",相当于日语约 30-80 字。

通知频率与字数的平衡

通知字数设计不仅要考虑单条通知,还需要考虑一定时间内显示的通知总量。即使每条通知字数适当,短时间内大量显示也会导致用户"通知疲劳"。

无障碍与通知文本

通知组件的无障碍性对屏幕阅读器用户尤为重要。视觉通知只在屏幕的一部分短暂显示,而屏幕阅读器通过 aria-live 属性以语音朗读。

Toast 消息设置 role="status"aria-live="polite",在不中断用户当前操作的情况下通知。错误通知设置 role="alert",立即朗读。

请记住通知文本的字数直接影响屏幕阅读器的朗读时间。40 字的 Toast 消息在标准速度下约需 8 秒,3 倍速也需约 3 秒。需要调整字数以确保朗读在 Toast 显示时间 (3-5 秒) 内完成。理想情况下,为屏幕阅读器用户提供延长 Toast 显示时间的选项,或提供可事后查看的通知历史。

通知 UX 设计相关的 UX 写作书籍可在 Amazon 上找到。系统学习微文案技术可以显著提升通知文本质量。

实现清单

将通知文本字数设计落实到实现中的清单:

各平台的通知文本约束

iOS 和 Android 的应用内通知组件规格不同。跨平台开发需要考虑两个 OS 约束的字数设计。

元素iOS (UIKit / SwiftUI)Android (Material Design 3)Web (CSS)
Toast无标准 API (自定义实现)Snackbar (1-2 行,1 个操作)自由设计
BannerUIBannerView (私有 API)Banner 组件 (2 行 + 2 个操作)自由设计
AlertUIAlertController (标题 + 消息 + 按钮)AlertDialog (标题 + 消息 + 最多 3 个按钮)自由设计
Action SheetUIAlertController (.actionSheet)BottomSheet自由设计

iOS 没有与 Android Snackbar 对应的标准组件,Toast 通知需要自定义实现。Apple 的 Human Interface Guidelines 推荐在屏幕底部使用低调的显示作为临时反馈,要求文本控制在"一眼可读的量"。虽然没有具体字数规定,但实际上日语 20-35 字较为合适。

Material Design 3 规定 Snackbar 文本为"理想 1 行,最多 2 行"。日语每行约 20-25 字 (基于 360dp 屏幕宽度),实用上限约为 50 字。操作按钮标签英语推荐 1 个单词 (如"UNDO"),日语控制在 4-6 字 (如"元に戻す")。

通知文本的本地化策略

多语言应用需要应对翻译通知文本时字数变化的问题。日语 20 字的 Toast 消息在德语中膨胀到 45 字并不罕见。

在 React Native 或 Flutter 等跨平台框架中,为 i18n 库的字符串附加最大字数元数据并在翻译时自动检查是有效的做法。正如 Slack 消息字数设计中所述,商务工具的通知文本需要兼顾简洁性和准确性。

分享这篇文章