Pickers

ComponentsControls

Source: Apple Inc. Canonical content at https://developer.apple.com/design/human-interface-guidelines/pickers. This file is a structured index of that content, snapshot 2025-02-02. Apple HIG text and imagery are © Apple Inc.; this repository provides organization and cross-referencing for AI agent consumption only.

Pickers

Best practices

Consider using a picker to offer medium-to-long lists of items.

Use predictable and logically ordered values.

Avoid switching views to show a picker.

Consider providing less granularity when specifying minutes in a date picker.

Platform considerations

iOS, iPadOS

  • Compact — A button that displays editable date and time content in a modal view.

  • Inline — For time only, a button that displays wheels of values; for dates and times, an inline calendar view.

  • Wheels — A set of scrolling wheels that also supports data entry through built-in or external keyboards.

  • Automatic — A system-determined style based on the current platform and date picker mode.

  • Date — Displays months, days of the month, and years.

  • Time — Displays hours, minutes, and (optionally) an AM/PM designation.

  • Date and time — Displays dates, hours, minutes, and (optionally) an AM/PM designation.

  • Countdown timer — Displays hours and minutes, up to a maximum of 23 hours and 59 minutes. This mode isn’t available in the inline or compact styles.

  • Compact

  • Inline

  • Wheels

Use a compact date picker when space is constrained.

macOS

Choose a date picker style that suits your app.

tvOS

watchOS

Resources

Developer documentation

Change log


For the complete guidance, including worked examples and illustrations, see the canonical page: https://developer.apple.com/design/human-interface-guidelines/pickers

Get HIG guidance in your AI

Install Apple HIG Skills and get expert design guidance directly in Claude Code.

npx skills add raintree-technology/apple-hig-skills
Email updates aren't configured on this deployment yet. Follow the GitHub repo (opens in new tab) for updates.