Token导航 LogoToken导航TokenDH.com
研究检索只读github未标认证来源可访问许可证需确认审计通过

ios-hig-designiOS HIG 设计

Agent Skill

用于辅助界面设计、视觉规范、排版、配色、布局和交互体验优化。它适合让 Agent 根据产品场景整理页面结构、生成 UI 方案、检查视觉一致性或改进组件层级。使用时需要结合现有品牌、设计系统和用户任务,不应只堆装饰元素;涉及真实页面改动时,应通过截图或浏览器预览检查文本溢出、对齐和响应式表现。

总安装

42,024

周安装

1,692

GitHub Stars

779

下载量

13,192
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ios-hig-design(iOS HIG 设计)
来源仓库:https://github.com/wondelai/skills
仓库路径:skills/ios-hig-design
安装命令:
npx skills add https://github.com/wondelai/skills --skill ios-hig-design
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/wondelai/skills --skill ios-hig-design

简介

本机 iOS 界面设计符合 Apple 的人机界面指南和平台约定。

  • 涵盖八个核心设计领域:布局和安全区域、动态类型排版、语义颜色和深色模式、本机导航模式、系统控制、辅助功能(VoiceOver、对比度、触摸目标)、SF 符号和带触觉反馈的标准手势
  • 包括用于审核 iOS 界面依从性的评分框架 (0-10)、常见错误表以及用于设计审核的快速诊断清单
  • 提供 iPhone SE 到 Pro Max 的间距(8/16/24pt 增量)、触摸目标(最小 44x44pt)、文本样式、颜色对比度 (4.5:1 WCAG AA) 以及设备特定安全区域插图的详细规范
  • 参考十个支持文档,涵盖版式、导航、组件、颜色、手势、辅助功能实现、应用程序图标、键盘输入、权限和小部件

SKILL.md

iOS Human Interface Guidelines Design Skill

Framework for designing native iOS app interfaces that feel intuitive, consistent, and aligned with Apple's design philosophy. Based on Apple's Human Interface Guidelines, the definitive resource for building apps that integrate seamlessly with iPhone, iPad, and the broader Apple ecosystem.

Core Principle

Apple's iOS design philosophy rests on three foundational pillars: clarity, deference, and depth. Every element must be legible and purposeful (clarity). The interface should never overshadow the content it presents (deference). And layering, transitions, and realistic motion must provide hierarchy and spatial relationships (depth).

The foundation: The best iOS apps don't just follow HIG rules mechanically---they internalize the philosophy that the interface exists to serve the user's content and tasks. Native components, system conventions, and platform consistency aren't constraints---they're the reason iOS users trust and enjoy apps that feel like they belong.

Scoring

Goal: 10/10. When reviewing or creating iOS interfaces or SwiftUI/UIKit code, rate them 0-10 based on adherence to the principles below. A 10/10 means full alignment with all guidelines; lower scores indicate gaps to address. Always provide the current score and specific improvements needed to reach 10/10.

iOS Design Framework

1. Layout & Safe Areas

Core concept: iOS devices have specific screen dimensions, safe area insets, and hardware intrusions (notch, Dynamic Island, home indicator) that must be respected in every layout.

Why it works: When layouts respect safe areas and standard spacing, the app feels native and trustworthy. Users never have content hidden behind hardware features or system UI, and the visual rhythm matches the rest of the platform.

Key insights:

  • Design for the smallest screen first (375pt width for iPhone SE)
  • Safe areas protect content from hardware features---never place interactive elements under the notch, Dynamic Island, or home indicator
  • Standard content margins are 16-20pt from screen edges
  • Minimum touch target size is 44 x 44pt
  • List row minimum height is 44pt
  • Standard spacing increments: 8 / 16 / 24pt

Product applications:

ContextLayout PatternExample
Status bar59pt height, always respectedTime, signal, battery area
Navigation bar44pt standard row + 58pt large titleBack button, title, actions
Content areaFlexible, scrollable, respects safe areaMain app content
Tab bar49pt height, translucent with blur2-5 primary destinations
Home indicator34pt inset at bottomSystem gesture area

Copy patterns:

  • Use VStack {} which respects safe areas by default
  • Use .ignoresSafeArea() only for backgrounds and decorative elements, never for interactive content
  • Always test on multiple device sizes including iPhone SE and Pro Max

Ethical boundary: Never hide critical content or controls behind hardware intrusions. Users with any device should have equal access to all functionality.

See: references/navigation.md for detailed navigation bar and tab bar specifications.

2. Typography & Dynamic Type

Core concept: iOS uses the San Francisco (SF Pro) typeface with a semantic text style system that automatically scales for accessibility via Dynamic Type.

Why it works: Semantic text styles create consistent visual hierarchy across the platform. Dynamic Type ensures every user---including those with visual impairments---can read content at their preferred size without breaking layouts.

Key insights:

  • Large Title: 34pt Bold; Title: 17pt Medium; Body: 17pt Regular
  • Secondary text: 15pt Regular at 60% opacity; Caption: 12-13pt
  • Minimum text size is 11pt (captions/secondary info only)
  • Line height minimum 1.3x font size for body text
  • Optimal line length: 35-50 characters per line on mobile
  • Always use left-aligned, non-justified text
  • Minimum contrast ratio: 4.5:1 (WCAG AA)

Product applications:

ContextTypography PatternExample
Screen titles.largeTitle or .title styleLarge title collapses on scroll
Body content.body style, 17ptList items, descriptions
Secondary info.subheadline or .footnoteTimestamps, metadata
Tab labels10pt SF textTab bar item labels
Buttons.body weight semiboldPrimary action text

Copy patterns:

  • Use .font(.title), .font(.body), .font(.caption) instead of hardcoded sizes
  • Prefer weight and color variation over extreme size differences for hierarchy
  • Test all layouts at the largest Dynamic Type size to ensure nothing breaks
  • Use @ScaledMetric for custom spacing that scales with Dynamic Type

Ethical boundary: Never disable Dynamic Type or set fixed font sizes that prevent accessibility scaling. Every user deserves readable text.

See: references/typography.md for complete text styles, font sizes, and Dark Mode typography rules.

3. Color & Dark Mode

Core concept: iOS provides semantic system colors that automatically adapt between light and dark appearances, ensuring proper contrast and visual hierarchy in both modes.

Why it works: Semantic colors maintain readability and hierarchy across appearances without manual intervention. Users who prefer Dark Mode get a first-class experience, and apps that support both modes feel polished and native.

Key insights:

  • Use Color(.label), Color(.secondaryLabel), Color(.systemBackground) instead of hardcoded colors
  • Color(.systemBlue) is the default tint/accent; .systemRed for destructive actions; .systemGreen for success
  • Dark Mode inverts text colors (dark to light) and shifts backgrounds darker while maintaining relative hierarchy
  • Accent colors in Dark Mode need lower brightness and higher saturation to pop
  • Always preview both modes during development
  • Maintain 4.5:1 contrast ratio in both light and dark

Product applications:

ContextColor PatternExample
Primary textColor(.label)Adapts white/black per mode
Secondary textColor(.secondaryLabel)60% opacity in both modes
BackgroundsColor(.systemBackground) / .secondarySystemBackgroundLayered depth
Destructive actionsColor(.systemRed)Delete buttons, warnings
Interactive tintApp accent color or .systemBlueLinks, toggle states

Copy patterns:

  • Use .preferredColorScheme(.light) and .dark in previews to test both modes side by side
  • Define custom colors in Asset Catalog with light/dark variants, not in code
  • Never assume a background is white or black---always use semantic colors
  • Test with Increase Contrast accessibility setting enabled

Ethical boundary: Dark Mode is not optional polish---it is expected by users. Never ship an app that is unreadable or broken in Dark Mode.

See: references/colors-depth.md for semantic colors, Dark Mode palette, and contrast ratio guidelines.

4. Navigation Patterns

Core concept: iOS uses a layered navigation model with tab bars for primary destinations, navigation stacks for hierarchical drilling, and modals for focused tasks.

Why it works: Consistent navigation patterns mean users always know where they are, how they got there, and how to go back. Violating these patterns creates confusion and makes the app feel foreign on iOS.

Key insights:

  • Tab bar: 2-5 primary destinations, always visible, remembers state per tab
  • Navigation bar: back button (top-left), title (center or large), actions (top-right)
  • Large title collapses to compact title on scroll with smooth animation
  • Modals for focused tasks; dismiss via swipe-down or explicit close button
  • Never use hamburger menus---iOS users expect tab bars
  • Search bar can appear below nav bar, hidden until pulled down

Product applications:

ContextNavigation PatternExample
App structureTab bar with 3-5 tabsHome, Search, Profile
Content hierarchyPush navigation (drill-down)List > Detail > Edit
Focused tasksModal presentationCompose, settings, filters
SearchPull-down search barSpotlight-style search
Split viewiPad sidebar + detailMail, Notes on iPad

Copy patterns:

  • Back button text should be the previous screen's title, not "Back"
  • Tab labels should be single words: "Home", "Search", "Profile"
  • Modal titles should describe the task: "New Message", "Edit Profile"
  • Use NavigationStack (not deprecated NavigationView) in SwiftUI

Ethical boundary: Never trap users in flows without a clear exit. Every screen must have an obvious way to go back or dismiss.

See: references/navigation.md for tab bar, navigation bar, modals, search patterns, and split views.

5. Controls & Inputs

Core concept: iOS provides a rich library of native controls (buttons, lists, toggles, pickers, menus, text fields) that users already understand and expect.

Why it works: Native controls come with built-in accessibility, haptic feedback, and interaction patterns that users have already learned. Custom controls create friction and often miss edge cases that Apple has already solved.

Key insights:

  • Page-level actions go in the nav bar (top) or action bar (bottom)
  • Primary buttons are filled with the theme color; secondary are outlined or text-only
  • Destructive actions use red and require confirmation for irreversible operations
  • Lists (table views) are the fundamental iOS content pattern
  • Match keyboard type to expected input (.emailAddress, .phonePad, .URL)
  • Use .textContentType for autofill support (email, password, address)

Product applications:

ContextControl PatternExample
FormsNative text fields with proper keyboard typesEmail field with @ keyboard
SettingsGrouped list with toggles, disclosureiOS Settings style
SelectionPicker, segmented control, or action sheetDate picker, sort options
Destructive actionsRed button + confirmation alert"Delete Account" flow
Context actionsLong press menu or swipe actionsEdit, share, delete on row

Copy patterns:

  • Use .keyboardType(.emailAddress) and .textContentType(.emailAddress) together
  • Prefer system alerts for confirmations: .alert() or .confirmationDialog()
  • Use .swipeActions on list rows for common actions
  • Place primary action buttons at the bottom of the screen within thumb reach

Ethical boundary: Never disguise ads as native controls or make destructive actions too easy to trigger accidentally. Confirmation dialogs exist for a reason.

See: references/components.md for buttons, lists, input controls, menus, and confirmation dialogs. See also: references/keyboard-input.md for keyboard types and input patterns.

6. Accessibility

Core concept: iOS has world-class accessibility features (VoiceOver, Dynamic Type, Switch Control, Voice Control) and every app must support them as a first-class concern, not an afterthought.

Why it works: Accessibility is not optional---it is required by app store guidelines and by ethical design practice. Over 1 billion people worldwide live with some form of disability. Accessible apps also benefit all users (larger text in sunlight, VoiceOver while driving).

Key insights:

  • Every interactive element needs an .accessibilityLabel describing what it is
  • Use .accessibilityValue for current state and .accessibilityHint for what it does
  • Group related elements with .accessibilityElement(children:.combine)
  • Support Dynamic Type at all sizes---test at the largest setting
  • Minimum touch target: 44 x 44pt
  • Minimum contrast ratio: 4.5:1 for text (WCAG AA)
  • Never convey meaning through color alone

Product applications:

ContextAccessibility PatternExample
Icons.accessibilityLabel("Favorite")Heart icon with label
Sliders.accessibilityValue("\(Int(volume * 100))%")Volume control
Buttons.accessibilityHint("Shares this item")Share button
Groups.accessibilityElement(children:.combine)Avatar + name row
ImagesDecorative: .accessibilityHidden(true)Background patterns

Copy patterns:

  • Write accessibility labels as nouns: "Favorite", "Settings", "Close"
  • Write hints as actions: "Shares this item with others", "Opens settings"
  • Test the complete app flow using only VoiceOver
  • Use Accessibility Inspector in Xcode to audit contrast and labels

Ethical boundary: Accessibility is not a nice-to-have. Shipping an inaccessible app excludes real people. Treat VoiceOver testing as seriously as visual testing.

See: references/accessibility.md for VoiceOver implementation, Dynamic Type support, and accessibility checklist.

7. Icons & Images

Core concept: iOS uses SF Symbols as the standard icon system and requires app icons in specific sizes with the signature superellipse ("squircle") mask applied automatically.

Why it works: SF Symbols are designed to align perfectly with San Francisco text, scale with Dynamic Type, and adapt to different weights and sizes. Consistent iconography makes the interface feel cohesive and native.

Key insights:

  • Use SF Symbols (Image(systemName:)) for all standard icons---they scale with text
  • App icons: export as 1024x1024px square; iOS applies the squircle mask automatically
  • Icon corner radius formula: side length x 0.222 with 61% corner smoothing
  • iOS 18+ supports light, dark, and tinted icon variants
  • Avoid text in app icons---it does not scale well
  • Keep icon designs simple with recognizable silhouettes

Product applications:

ContextIcon PatternExample
Tab barSF Symbols, filled variant for selectedhouse.fill, magnifyingglass
Navigation barSF Symbols at regular weightgear, plus, ellipsis
List accessoriesSF Symbols, secondary colorchevron.right, checkmark
App icon1024px square, simple bold designSingle recognizable glyph
WidgetsSF Symbols matching widget styleConsistent with app branding

Copy patterns:

  • Use Image(systemName: "heart.fill") for SF Symbols
  • Apply .symbolRenderingMode(.hierarchical) for multi-color depth
  • Use .imageScale(.large) or .font() to size symbols relative to text
  • Browse available symbols in the SF Symbols app (free from Apple)

Ethical boundary: Never use misleading icons that suggest functionality that does not exist. Icon meaning should match the iOS convention (e.g., trash = delete, not archive).

See: references/app-icons.md for icon size tables, shape specifications, and design guidelines.

8. Gestures & Haptics

Core concept: iOS defines standard gestures (swipe back, pull to refresh, long press for context menu) and haptic feedback patterns that must be respected and never overridden.

Why it works: Gestures are muscle memory. When an app overrides the swipe-back gesture or repurposes pull-to-refresh, users feel disoriented and frustrated. Haptics provide invisible confirmation that an action registered, reducing uncertainty.

Key insights:

  • Never override: swipe-right-from-edge (back), swipe-down on modal (dismiss), pull-down on list (refresh)
  • Swipe-left on rows reveals actions (delete, archive, etc.)
  • Long press shows context menus
  • Pinch to zoom is expected on images and maps
  • Use three haptic types: impact (physical actions), notification (outcomes), selection (UI changes)
  • Haptics should be subtle and meaningful---never constant or annoying

Product applications:

ContextGesture/Haptic PatternExample
NavigationSwipe right from left edgeSystem back gesture
ModalsSwipe down to dismissSheet dismissal
ListsPull to refresh, swipe for actionsRefresh content, delete row
MediaPinch to zoom, double-tapPhoto viewer
Confirmation.success haptic on completionPayment confirmed
SelectionSelection haptic on toggle/pickPicker wheel scroll

Copy patterns:

  • Use UIImpactFeedbackGenerator(style:.medium) for physical interactions
  • Use UINotificationFeedbackGenerator() with .success, .warning, .error for outcomes
  • Use UISelectionFeedbackGenerator() for UI state changes
  • Call .prepare() before triggering haptics to minimize latency

Ethical boundary: Never use aggressive haptics to pressure users into actions. Haptic feedback should confirm, not coerce.

See: references/gestures.md for standard gesture table, haptic feedback patterns, and animation guidelines.

Common Mistakes

MistakeWhy It FailsFix
Overriding standard gesturesUsers expect swipe-back, pull-refresh globally; overriding breaks muscle memoryUse system gestures for their intended purposes; add custom gestures only for supplementary actions
Touch targets under 44ptSmall targets cause mis-taps and frustrate users, especially with accessibility needsEnsure all interactive elements are at least 44 x 44pt
Ignoring safe areasContent hidden behind notch, Dynamic Island, or home indicatorAlways respect safe area insets; use .ignoresSafeArea() only for backgrounds
Using Android patterns on iOSHamburger menus, top tab bars, material-style FABs feel foreignUse tab bars for primary navigation, bottom sheets, native iOS components
Skipping Dark ModeUsers who prefer Dark Mode see broken layouts, unreadable textUse semantic colors; test both appearances; define light/dark color pairs
Hardcoding font sizesBreaks Dynamic Type, excludes users who need larger textUse semantic text styles (.title, .body, .caption) throughout
Low contrast textFails WCAG AA, unreadable in sunlight or for low-vision usersMaintain 4.5:1 minimum contrast ratio; test with Increase Contrast setting
Not testing on real devicesSimulator misses performance, haptics, safe area edge casesTest on physical devices, especially the smallest and largest screen sizes

Quick Diagnostic

Audit any iOS interface design:

QuestionIf NoAction
Does the layout respect safe areas on all device sizes?Content may be hidden behind hardware featuresAudit all screens on iPhone SE and Pro Max; fix safe area insets
Are all touch targets at least 44 x 44pt?Users will mis-tap, especially with accessibility needsIncrease tap areas; use .frame(minWidth: 44, minHeight: 44)
Does the app work fully in Dark Mode?Dark Mode users see broken/unreadable UIReplace hardcoded colors with semantic system colors
Does text scale properly with Dynamic Type?Accessibility violation; excludes low-vision usersReplace fixed font sizes with semantic text styles; test at largest setting
Can a VoiceOver user complete every task?App is inaccessible to blind and low-vision usersAdd accessibility labels, values, hints to all interactive elements
Are navigation patterns native iOS?App feels foreign; users struggle to navigateReplace hamburger menus with tab bars; use standard push/modal navigation

Reference Files

Further Reading

This skill is based on Apple's Human Interface Guidelines, the official design documentation for all Apple platforms. For the complete guidelines, platform-specific guidance, and latest updates:

About the Author

The Apple Human Interface Guidelines are authored and maintained by Apple's Human Interface Design team, one of the most influential design organizations in technology. The HIG traces its origins to 1984, when Apple published the original *Macintosh Human Interface Guidelines* alongside the launch of the first Macintosh computer. That document established principles---direct manipulation, see-and-point, consistency, WYSIWYG, user control---that defined graphical user interface design for decades. Under the leadership of designers including Jef Raskin, Bruce Tognazzini, and later Jony Ive and Alan Dye, Apple's design philosophy evolved through Mac OS, iPhone (2007), iPad (2010), Apple Watch (2015), and Apple Vision Pro (2024). The HIG has been continuously updated to reflect new interaction paradigms---from mouse to multi-touch to spatial computing---while maintaining the core belief that technology should be intuitive, accessible, and delightful. Today the HIG is freely available at developer.apple.com and remains the essential reference for anyone building apps on Apple platforms.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

38.22%
按下载量换算5,042

Claude

31.34%
按下载量换算4,134

Cursor

17.08%
按下载量换算2,253

Gemini CLI

9.93%
按下载量换算1,310

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills