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.
-
尽量减少模态化。 仅在需要吸引注意、任务必须完成或放弃、或保存更改至关重要时使用模态。优先选择非模态的替代方案。
-
提供清晰的反馈。 每个操作都应产生可见、可听或触觉响应。不确定等待时使用活动指示器,确定进度时使用进度条,物理确认时使用触觉反馈。
-
支持撤销而非确认对话框。 破坏性操作应尽可能可逆。撤销几乎总是比“您确定吗?”更好。
-
快速启动。 显示一个无缝过渡到首个屏幕的启动屏幕。不要使用带有标志的启动闪屏。恢复之前的状态。
-
延迟登录。 在要求创建账户之前让用户先探索。支持 Apple 登录和通行密钥。
-
保持引导简短。 最多三个屏幕。让用户可跳过。通过渐进式披露和情境提示进行教学。
-
使用渐进式披露。 先展示必要内容,让用户深入了解细节。不要在一个屏幕上堆叠所有选项。
-
尊重用户注意力。 合并通知,减少打断,让用户控制提醒。绝不要将通知用于营销。
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 | 启动 | 启动屏幕、状态恢复、冷启动与热启动 |
| live-viewing-apps.md | 实时查看应用 | 实时内容展示、实时更新、Live Activities、Dynamic Island |
| loading.md | 加载 | 活动指示器、进度视图、骨架屏、懒加载、占位符 |
| managing-accounts.md | 管理账户 | Apple 登录、通行密钥、账户创建、凭据自动填充、账户删除 |
| managing-notifications.md | 管理通知 | 权限请求、分组、可操作通知、临时投递 |
| modality.md | 模态 | Sheets、提醒、弹出框、全屏模态,各自使用时机 |
| multitasking.md | 多任务 | iPad Split View、Slide Over、Stage Manager、响应式布局、尺寸类别转换 |
| 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 | 设置 | 应用内设置 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 -- 模式中的内容展示(图表、集合、搜索结果)
由 Raintree Technology 构建 · 更多开发者工具