hig-components-status
Apple HIG: Status Components
Check for .claude/apple-design-context.md before asking questions. Use existing context and only ask for information not already covered.
Key Principles
Progress Indicators
-
Show progress for operations longer than a second or two.
-
Determinate when duration/percentage is known. A filling progress bar gives users a clear sense of remaining work. Use for downloads, uploads, or any measurable process.
-
Indeterminate when duration is unknown. A spinner communicates work is happening without promising a timeframe. Use for unpredictable network requests.
-
Prefer progress bars over spinners. Determinate progress feels faster and more trustworthy.
-
Place indicators where content will appear. Inline progress near the content area, not modal or distant.
-
Don't stack multiple indicators. Aggregate simultaneous operations into one representation or show the most relevant.
Status Bars
-
Don't hide the status bar without good reason. Reserve hiding for immersive experiences (full-screen media, games, AR).
-
Match status bar style to your content. Light or dark for adequate contrast.
-
Respect safe areas. No interactive content behind the status bar.
-
Restore promptly when exiting immersive contexts.
Activity Rings
-
Activity rings are for Move, Exercise, and Stand goals. Don't repurpose the ring metaphor for unrelated data.
-
Respect ring color conventions. Red (Move), green (Exercise), blue (Stand) are strongly associated with Apple Fitness.
-
Use HealthKit APIs for activity data rather than manual tracking.
-
Celebrate completions with animation and haptics when rings close.
Reference Index
| Reference | Topic | Key content |
|---|---|---|
| progress-indicators.md | Progress bars and spinners | Determinate, indeterminate, inline placement, duration |
| status-bars.md | iOS/iPadOS status bar | System info, visibility, style, safe areas |
| activity-rings.md | watchOS activity rings | Move/Exercise/Stand, HealthKit, fitness tracking, color |
Output Format
- Indicator type recommendation with rationale (determinate vs indeterminate).
- Timing and animation guidance -- duration thresholds, animation style, transitions.
- Accessibility -- VoiceOver progress announcements, live region updates.
- Platform-specific behavior across targeted platforms.
Questions to Ask
- Is the duration known or unknown?
- Which platforms?
- How long does the operation typically take?
- System-level or in-app indicator?
Related Skills
- hig-components-system -- Widgets and complications displaying progress or status
- hig-inputs -- Gestures triggering progress states (pull-to-refresh)
- hig-technologies -- HealthKit for activity ring data; VoiceOver for progress announcements
Built by Raintree Technology · More developer tools
When to Use
This skill is applicable to execute the workflow or actions described in the overview.