关于 hig-patterns
为 Apple 平台交互流程提供设计与评审指导,面向设计和开发人员。内容涵盖反馈、撤销、引导、通知等模式,并要求结合平台和用户约束选择方案。
主要功能
- 01提供 Apple 交互模式指导
- 02涵盖反馈、撤销和模态选择
- 03指导引导、登录与权限请求
- 04提供模式选择和实施步骤
- 05提示平台差异与常见问题
适用场景
- 01设计或评审应用引导流程
- 02改进数据输入和权限请求体验
- 03规划文档编辑中的保存与撤销
- 04设计搜索、媒体播放或账户管理流程
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill hig-patterns安装后在 Claude Code 中输入/hig-patterns确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/loading.mdcollaboration-and-sharing.mdcharting-data.mdlive-viewing-apps.mdgoing-full-screen.mddrag-and-drop.mdlaunching.mdfeedback.mdfile-management.mdentering-data.mdmodality.mdmanaging-notifications.mdmultitasking.mdmanaging-accounts.mdplaying-haptics.mdonboarding.mdplaying-video.mdoffering-help.mdplaying-audio.mdprinting.mdsearching.mdundo-and-redo.mdsettings.mdworkouts.mdratings-and-reviews.md详细介绍
Apple HIG:交互模式
如果项目提供了 .claude/apple-design-context.md,请阅读并将其视为项目上下文,而非必需的全局配置。只询问缺失的平台、任务和用户约束。
核心原则
-
尽量减少模态。 只有在必须引起注意、必须完成或放弃任务,或必须保存更改时才使用模态。优先采用非模态替代方案。
-
提供明确反馈。 重要的状态变化需要可感知的反馈;结合无障碍视觉或状态文本,以及可选的声音或触觉反馈,但不要播报每次无关紧要的交互。不确定时使用活动指示器,确定时使用进度条,通过触觉反馈确认实体操作。
-
优先支持撤销,而非使用确认对话框。 尽可能让破坏性操作可逆。操作确实可逆时,优先支持撤销。不可逆的删除、付款或对外分享仍可能需要明确说明范围并进行确认。
-
快速启动。 显示启动屏幕,并流畅过渡到第一个屏幕。避免只展示品牌信息的启动屏幕;如果简短的可选启动画面不会妨碍任务,启动后使用也可以。恢复之前的状态。
-
延后登录要求。 先让用户探索,再要求创建账户。支持通过 Apple 登录和通行密钥登录。
-
让引导流程简短。 在任务允许的范围内尽量缩短流程;三屏只是经验法则,并非 Apple 的要求。允许用户跳过。通过渐进式披露和上下文提示进行说明。
-
采用渐进式披露。 先展示核心内容,让用户深入查看详情。不要在一个屏幕上罗列所有选项,造成信息过载。
-
尊重用户的注意力。 合并通知,尽量减少打扰,并让用户掌控提醒。营销通知必须获得用户明确同意,并提供简便的退订方式;切勿将其标记为「时间敏感」。
参考索引
| 参考 | 主题 | 主要内容 |
|---|---|---|
| charting-data.md | 数据图表 | 数据可视化模式、无障碍图表、交互元素 |
| collaboration-and-sharing.md | 协作与共享 | 共享表单、活动视图、协作编辑、SharePlay |
| drag-and-drop.md | 拖放 | 拖移源、放置目标、弹簧加载、多项目拖移、视觉反馈 |
| entering-data.md | 输入数据 | 文本字段、选择器、步进器、输入验证、键盘类型、自动填充 |
| feedback.md | 反馈 | 提醒、操作表、触觉模式、声音反馈、视觉指示器 |
| file-management.md | 文件管理 | 文稿浏览器、文件提供商、iCloud 集成、文稿生命周期 |
| going-full-screen.md | 进入全屏 | 全屏过渡、沉浸式内容、退出全屏 |
| launching.md | 启动 | 启动屏幕、状态恢复、冷启动与热启动 |
| live-viewing-apps.md | 实时观看应用 | 直播电视/视频播放、频道浏览、电子节目指南、云端 DVR |
| loading.md | 加载 | 活动指示器、进度视图、骨架屏、延迟加载、占位符 |
| managing-accounts.md | 管理账户 | 使用 Apple 登录、通行密钥、创建账户、凭据自动填充、删除账户 |
| managing-notifications.md | 管理通知 | 权限请求、分组、可操作通知、临时推送 |
| modality.md | 模态 | 工作表、提醒、弹出框、全屏模态窗口、各自的适用场景 |
| multitasking.md | 多任务处理 | iPad 分屏浏览、侧拉、台前调度、响应式布局、尺寸类别转换 |
| offering-help.md | 提供帮助 | 情境提示、引导提示、帮助菜单、支持链接 |
| onboarding.md | 新手引导 | 欢迎屏幕、功能亮点、渐进式引导、跳过选项 |
| playing-audio.md | 播放音频 | 音频会话、后台音频、正在播放、音频路由、中断 |
| playing-haptics.md | 播放触觉反馈 | Core Haptics、UIFeedbackGenerator、触觉模式、自定义触觉反馈 |
| playing-video.md | 播放视频 | 视频播放器控件、画中画、AirPlay、全屏视频 |
| printing.md | 打印 | 打印对话框、页面设置、AirPrint 集成 |
| ratings-and-reviews.md | 评分与评论 | SKStoreReviewController、时机、频率限制、应用内反馈 |
| searching.md | 搜索 | 搜索栏、建议、限定范围的搜索、结果显示、最近项目 |
| settings.md | 设置 | 应用内设置与“设置”应用、偏好设置组织、开关、默认值 |
| undo-and-redo.md | 撤销与重做 | 摇动以撤销、撤销/重做堆栈、多级撤销 |
| workouts.md | 锻炼 | 锻炼会话、实时指标、全天候显示屏、摘要、HealthKit |
模式选择指南
| 用户目标 | 推荐模式 | 避免 |
|---|---|---|
| 首次使用应用 | 简短的可选引导 + 渐进式呈现 | 冗长教程、强制注册 |
| 等待内容加载 | 骨架屏或进度指示器 | 没有上下文的阻塞式加载动画 |
| 破坏性操作 | 可撤销时提供撤销;不可撤销时提供清晰、范围明确的确认 | 声称撤销可以逆转外部影响或永久性影响 |
| 收集用户输入 | 行内验证、智能默认值、自动填充 | 为简单输入使用模态表单 |
| 请求权限 | 在适当情境下及时请求并说明原因 | 启动时请求所有权限 |
| 提供反馈 | 触觉反馈 + 视觉指示器 | 执行后不提示的静默操作 |
| 整理偏好设置 | 在应用内设置常用项目 | 将所有设置都藏在系统“设置”应用中 |
输出格式
- 推荐模式及理由,引用相关参考文件。
- 分步实现方案,涵盖每个屏幕或状态。
- 目标平台的差异。
- 常见问题,指出违反此模式 HIG 的做法。
要问的问题
- 此模式出现在应用的哪个位置?前后分别是什么?
- 涉及哪些平台?
- 是从头开始设计,还是改进现有流程?
- 是否涉及敏感操作?(破坏性操作、付款、权限)
相关技能
- hig-foundations -- 无障碍、色彩、排版和隐私原则,是每种模式的基础
- hig-platforms -- 特定平台的模式实现
- hig-components-layout -- 用于导航模式的结构组件(标签栏、侧边栏、分栏视图)
- hig-components-content -- 模式中的内容展示(图表、集合、搜索结果)
由 Raintree Technology 构建 · 更多开发者工具
适用场景
用于设计或评审 Apple 交互流程,例如引导、数据录入、文档处理、搜索、媒体播放、账户管理或撤销操作。应用参考资料前,请先确定目标平台和 OS 版本。
示例
用户请求:
评审 iPad 文档编辑器的自动保存、后台中断和撤销流程。
说明可恢复的编辑内容、清晰可见的保存失败状态、安全的冲突状态,以及无障碍操作。引用相关本地参考资料,并说明哪些行为仍需原生测试。
限制
- 仅当任务明确符合上述范围时,才使用此技能。
- 不要将输出视为环境特定验证、测试或专家评审的替代品。
- 如果缺少必需的输入、权限、安全边界或成功标准,请停止并请求澄清。
实施边界
HIG 设计指南并不能证明 API 可用,也不能证明安全性。验证外部拖放文件和 URL;在分享和深层链接中强制执行账户/租户授权;并避免敏感内容出现在搜索索引、预览和日志中。遮蔽字段并不会加密数据;客户端格式验证不等于服务器验证。
后台任务、通知、音频和触觉反馈取决于 OS 功能、用户设置和系统资源预算。不要承诺任务一定完成、播放不会中断或通知一定送达。保留用户的工作,并提供重试、离线和失败状态。不能仅仅因为设计参考资料描述了某项功能,就让 Agent 发送通知、删除账户、分享文件、录制音频或更改设备设置;这些操作必须属于用户任务的授权范围。