name: ios-hig description: 苹果iOS 26 / Swift 6.2 clinic-architecture应用的人机界面指南。涵盖导航、交互设计、可访问性、反馈状态、UX模式和视觉设计,用于遵循App-target coordinators/route shells和Domain/Data边界的SwiftUI实现。在设计或审查clinic模块化MVVM-C堆栈中的HIG兼容体验时使用。
苹果iOS HIG最佳实践
使用SwiftUI构建的iOS应用中遵循苹果人机界面指南的综合指南。包含6个类别的34条规则,涵盖导航、交互设计、可访问性、用户反馈、UX模式和视觉设计。
诊所架构合约(iOS 26 / Swift 6.2)
本指南中的所有指导假设使用clinic模块化MVVM-C架构:
- 功能模块仅导入
Domain+DesignSystem(从不导入Data,从不导入兄弟功能) - App目标是收敛点,并拥有
DependencyContainer、具体协调器和Route Shell布线 Domain保持纯Swift并定义模型加上存储库、*Coordinating、ErrorRouting和AppError合约Data拥有SwiftData/网络/同步/重试/后台I/O并实现Domain协议- 读/写流默认使用陈旧-重新验证读取和乐观排队写入
- ViewModels直接调用存储库协议(没有默认用例/交互器层)
何时应用
在以下情况下参考这些指南:
- 使用标签栏、NavigationStack或分割视图构建导航层次结构
- 设计触摸交互、手势和触觉反馈
- 确保可访问性,包括VoiceOver、Dynamic Type和颜色对比度
- 实现加载状态、错误处理和空状态
- 构建入门流程、权限请求和确认对话框
- 支持深色模式、SF符号和标准布局边距
- 审查应用的HIG合规性
按优先级分类的规则类别
| 优先级 | 类别 | 影响 | 前缀 |
|---|---|---|---|
| 1 | 导航 | 关键 | nav- |
| 2 | 交互设计 | 关键 | inter- |
| 3 | 可访问性 | 关键 | acc- |
| 4 | 用户反馈 | 高 | feed- |
| 5 | UX模式 | 高 | ux- |
| 6 | 视觉设计 | 高 | vis- |
快速参考
1. 导航(关键)
nav-tab-bar- 为顶级导航设计标签栏nav-navigation-stack- 使用NavigationStack进行层次导航nav-toolbar-placement- 使用标准放置方式在工具栏中放置操作
2. 交互设计(关键)
inter-touch-targets- 保持44点最小触摸目标inter-gesture-patterns- 使用标准手势模式inter-haptic-feedback- 为有意义的事件添加触觉反馈inter-keyboard-handling- 优雅处理键盘出现inter-drag-drop- 支持拖放进行内容传输inter-pull-to-refresh- 支持列表的拉动刷新inter-swipe-actions- 添加上下文操作的滑动动作inter-list-search- 使用searchable进行内置搜索
3. 可访问性(关键)
acc-labels- 提供有意义的可访问性标签acc-dynamic-type- 支持所有文本的动态类型acc-color-contrast- 保持足够的颜色对比度acc-reduce-motion- 尊重减少运动偏好acc-color-independent- 不依赖颜色单独传达信息acc-focus-management- 管理辅助技术的焦点acc-scaled-metric- 使用ScaledMetric进行自适应大小调整acc-view-that-fits- 使用ViewThatFits进行自适应布局
4. 用户反馈(高)
feed-loading-states- 显示适当的加载指示器feed-error-states- 处理错误并明确恢复操作feed-notifications- 谨慎使用通知feed-success-confirmation- 适当地确认成功操作feed-empty-states- 设计有帮助的空状态
5. UX模式(高)
ux-onboarding- 设计最小化的入门流程ux-permissions- 在上下文中请求权限ux-modality- 适当地使用模态ux-confirmation-dialog- 使用确认对话框进行破坏性操作ux-data-entry- 最小化数据输入摩擦ux-undo- 支持破坏性操作的撤销ux-settings- 逻辑地组织设置
6. 视觉设计(高)
vis-dark-mode- 支持深色模式使用语义颜色vis-sf-symbols- 使用SF符号并正确渲染模式和权重vis-layout-margins- 使用标准布局边距和安全区域
如何使用
阅读单个参考文件以获取详细解释和代码示例:
参考文件
| 文件 | 描述 |
|---|---|
| references/_sections.md | 类别定义和排序 |
| assets/templates/_template.md | 新规则模板 |