hig-patterns
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseApple HIG: Interaction Patterns
Apple HIG:交互模式
Check for before asking questions. Use existing context and only ask for information not already covered.
.claude/apple-design-context.md提问前请查看文件。请利用现有上下文,仅询问未涵盖的信息。
.claude/apple-design-context.mdKey Principles
核心原则
-
Minimize modality. Use modality only when it is critical to get attention, a task must be completed or abandoned, or saving changes is essential. Prefer non-modal alternatives.
-
Provide clear feedback. Every action should produce visible, audible, or haptic response. Activity indicators for indeterminate waits, progress bars for determinate, haptics for physical confirmation.
-
Support undo over confirmation dialogs. Destructive actions should be reversible when possible. Undo is almost always better than "Are you sure?"
-
Launch quickly. Display a launch screen that transitions seamlessly into the first screen. No splash screens with logos. Restore previous state.
-
Defer sign-in. Let users explore before requiring account creation. Support Sign in with Apple and passkeys.
-
Keep onboarding brief. Three screens max. Let users skip. Teach through progressive disclosure and contextual hints.
-
Use progressive disclosure. Show essentials first, let users drill into details. Don't overwhelm with every option on one screen.
-
Respect user attention. Consolidate notifications, minimize interruptions, give users control over alerts. Never use notifications for marketing.
-
最小化模态交互:仅在需要吸引用户注意力、必须完成或放弃任务,或保存更改至关重要时使用模态交互。优先选择非模态替代方案。
-
提供清晰反馈:每个操作都应产生可见、可听或触觉反馈。不确定等待时长时使用活动指示器,确定进度时使用进度条,物理确认时使用触觉反馈。
-
优先支持撤销而非确认对话框:如有可能,破坏性操作应具备可逆性。撤销几乎总是比“您确定吗?”对话框更优。
-
快速启动:显示可无缝过渡到首屏的启动屏幕,不要使用带有logo的闪屏。恢复之前的应用状态。
-
延迟登录:允许用户先探索应用功能,再要求创建账户。支持Sign in with Apple和passkeys(密钥登录)。
-
保持引导流程简洁:引导流程最多包含3个屏幕。允许用户跳过引导。通过渐进式展示和上下文提示进行功能引导。
-
使用渐进式展示:先显示核心内容,让用户按需深入查看详情。不要在一个屏幕上展示所有选项,避免使用户不知所措。
-
尊重用户注意力:整合通知信息,尽量减少干扰,让用户拥有提醒控制权。切勿将通知用于营销目的。
Reference Index
参考索引
| Reference | Topic | Key content |
|---|---|---|
| charting-data.md | Charting Data | Data visualization patterns, accessible charts, interactive elements |
| collaboration-and-sharing.md | Collaboration & Sharing | Share sheets, activity views, collaborative editing, SharePlay |
| drag-and-drop.md | Drag and Drop | Drag sources, drop targets, spring loading, multi-item drag, visual feedback |
| entering-data.md | Entering Data | Text fields, pickers, steppers, input validation, keyboard types, autofill |
| feedback.md | Feedback | Alerts, action sheets, haptic patterns, sound feedback, visual indicators |
| file-management.md | File Management | Document browser, file providers, iCloud integration, document lifecycle |
| going-full-screen.md | Going Full Screen | Full-screen transitions, immersive content, exiting full screen |
| launching.md | Launching | Launch screens, state restoration, cold vs warm launch |
| live-viewing-apps.md | Live Viewing Apps | Live content display, real-time updates, Live Activities, Dynamic Island |
| loading.md | Loading | Activity indicators, progress views, skeleton screens, lazy loading, placeholders |
| managing-accounts.md | Managing Accounts | Sign in with Apple, passkeys, account creation, credential autofill, account deletion |
| managing-notifications.md | Managing Notifications | Permission requests, grouping, actionable notifications, provisional delivery |
| modality.md | Modality | Sheets, alerts, popovers, full-screen modals, when to use each |
| multitasking.md | Multitasking | iPad Split View, Slide Over, Stage Manager, responsive layout, size class transitions |
| offering-help.md | Offering Help | Contextual tips, onboarding hints, help menus, support links |
| onboarding.md | Onboarding | Welcome screens, feature highlights, progressive onboarding, skip options |
| playing-audio.md | Playing Audio | Audio sessions, background audio, Now Playing, audio routing, interruptions |
| playing-haptics.md | Playing Haptics | Core Haptics, UIFeedbackGenerator, haptic patterns, custom haptics |
| playing-video.md | Playing Video | Video player controls, picture-in-picture, AirPlay, full-screen video |
| printing.md | Printing | Print dialogs, page setup, AirPrint integration |
| ratings-and-reviews.md | Ratings & Reviews | SKStoreReviewController, timing, frequency limits, in-app feedback |
| searching.md | Searching | Search bars, suggestions, scoped search, results display, recents |
| settings.md | Settings | In-app vs Settings app, preference organization, toggles, defaults |
| undo-and-redo.md | Undo and Redo | Shake to undo, undo/redo stack, multi-level undo |
| workouts.md | Workouts | Workout sessions, live metrics, Always On display, summaries, HealthKit |
| 参考文档 | 主题 | 核心内容 |
|---|---|---|
| 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 | 应用启动 | 启动屏幕、状态恢复、冷启动 vs 热启动 |
| live-viewing-apps.md | 实时查看应用 | 实时内容展示、实时更新、Live Activities、Dynamic Island |
| loading.md | 加载状态 | 活动指示器、进度视图、骨架屏、懒加载、占位符 |
| managing-accounts.md | 账户管理 | Sign in with Apple、passkeys、账户创建、凭证自动填充、账户删除 |
| managing-notifications.md | 通知管理 | 权限请求、通知分组、可操作通知、临时推送 |
| modality.md | 模态交互 | 表单页、提醒框、弹出框、全屏模态、各场景适用情况 |
| multitasking.md | 多任务处理 | iPad分屏视图、侧滑覆盖、Stage Manager、响应式布局、尺寸类过渡 |
| offering-help.md | 帮助支持 | 上下文提示、引导提示、帮助菜单、支持链接 |
| onboarding.md | 应用引导 | 欢迎屏幕、功能亮点、渐进式引导、跳过选项 |
| playing-audio.md | 音频播放 | 音频会话、后台音频、Now Playing、音频路由、中断处理 |
| playing-haptics.md | 触觉反馈 | Core Haptics、UIFeedbackGenerator、触觉模式、自定义触觉 |
| playing-video.md | 视频播放 | 视频播放器控制、画中画、AirPlay、全屏视频 |
| printing.md | 打印功能 | 打印对话框、页面设置、AirPrint集成 |
| ratings-and-reviews.md | 评分与评论 | SKStoreReviewController、时机选择、频率限制、应用内反馈 |
| searching.md | 搜索功能 | 搜索栏、搜索建议、范围搜索、结果展示、最近搜索 |
| settings.md | 设置功能 | 应用内设置 vs 系统设置应用、偏好设置组织、开关控件、默认设置 |
| undo-and-redo.md | 撤销与重做 | 摇一摇撤销、撤销/重做栈、多级撤销 |
| workouts.md | 健身应用 | 健身会话、实时指标、常亮显示、健身总结、HealthKit |
Pattern Selection Guide
模式选择指南
| User Goal | Recommended Pattern | Avoid |
|---|---|---|
| First app experience | Brief onboarding (max 3 screens) + progressive disclosure | Long tutorials, mandatory sign-up |
| Waiting for content | Skeleton screens or progress indicators | Blocking spinners with no context |
| Confirming destructive action | Undo support | Excessive "Are you sure?" dialogs |
| Collecting user input | Inline validation, smart defaults, autofill | Modal forms for simple inputs |
| Requesting permissions | Contextual, just-in-time with explanation | Requesting all permissions at launch |
| Providing feedback | Haptics + visual indicator | Silent actions with no confirmation |
| Organizing preferences | In-app settings for frequent items | Burying all settings in system Settings app |
| 用户目标 | 推荐模式 | 避免做法 |
|---|---|---|
| 首次应用体验 | 简洁引导流程(最多3屏)+ 渐进式展示 | 冗长教程、强制注册 |
| 等待内容加载 | 骨架屏或进度指示器 | 无上下文的阻塞式加载动画 |
| 确认破坏性操作 | 支持撤销功能 | 过多的“您确定吗?”对话框 |
| 收集用户输入 | 内联验证、智能默认值、自动填充 | 简单输入使用模态表单 |
| 请求权限 | 上下文相关、及时请求并说明原因 | 启动时请求所有权限 |
| 提供操作反馈 | 触觉反馈 + 视觉指示器 | 无反馈的静默操作 |
| 组织偏好设置 | 常用项放在应用内设置 | 所有设置都隐藏在系统设置应用中 |
Output Format
输出格式
- Recommended pattern with rationale, citing the relevant reference file.
- Step-by-step implementation covering each screen or state.
- Platform variations for targeted platforms.
- Common pitfalls that violate HIG for this pattern.
- 带理由的推荐模式,引用相关参考文件。
- 分步实现方案,涵盖每个屏幕或状态。
- 平台差异,针对目标平台的不同实现方式。
- 常见误区,违反HIG规范的常见错误。
Questions to Ask
需询问的问题
- Where in the app does this pattern appear? What comes before and after?
- Which platforms?
- Designing from scratch or improving an existing flow?
- Does this involve sensitive actions? (Destructive operations, payments, permissions)
- 该模式出现在应用的哪个位置?前后的流程是什么?
- 针对哪些平台?
- 是从零开始设计还是优化现有流程?
- 是否涉及敏感操作?(破坏性操作、支付、权限请求)
Related Skills
相关技能
- hig-foundations -- Accessibility, color, typography, and privacy principles underlying every pattern
- hig-platforms -- Platform-specific pattern implementations
- hig-components-layout -- Structural components (tab bars, sidebars, split views) for navigation patterns
- hig-components-content -- Content display within patterns (charts, collections, search results)
Built by Raintree Technology · More developer tools
- hig-foundations -- 所有模式背后的无障碍、色彩、排版和隐私原则
- hig-platforms -- 针对特定平台的模式实现
- hig-components-layout -- 用于导航模式的结构化组件(标签栏、侧边栏、分屏视图)
- hig-components-content -- 模式内的内容展示(图表、集合、搜索结果)
When to Use
使用场景
This skill is applicable to execute the workflow or actions described in the overview.
当需要执行概述中描述的工作流或操作时,可使用此技能。