UNPKG

apple-dev-mcp

Version:

Complete Apple development guidance: Human Interface Guidelines (design) + Technical Documentation for iOS, macOS, watchOS, tvOS, and visionOS

15 lines (14 loc) 4.04 kB
--- title: Pull Down Buttons platform: macOS category: foundations url: https://developer.apple.com/design/human-interface-guidelines/pull-down-buttons quality_score: 0.42 content_length: 3620 last_updated: 2025-07-20T03:46:56.160Z keywords: ["pull down buttons","macos","foundations","buttons","interface","system","design"] has_code_examples: false has_images: false is_fallback: false --- Pull-down buttons A pull-down button displays a menu of items or actions that directly relate to the buttons purpose. After people choose an item in a pull-down buttons menu, the menu closes, and the app performs the chosen action. Best practices Use a pull-down button to present commands or items that are directly related to the buttons action. The menu lets you help people clarify the buttons target or customize its behavior without requiring additional buttons in your interface. For example:An Add button could present a menu that lets people specify the item they want to add. A Sort button could use a menu to let people select an attribute on which to sort. A Back button could let people choose a specific location to revisit instead of opening the previous one. If you need to provide a list of mutually exclusive choices that arent commands, use a pop-up button instead. Avoid putting all of a views actions in one pull-down button. A views primary actions need to be easily discoverable, so you dont want to hide them in a pull-down button that people have to open before they can do anything. Balance menu length with ease of use. Because people have to interact with a pull-down button before they can view its menu, listing a minimum of three items can help the interaction feel worthwhile. If you need to list only one or two items, consider using alternative components to present them, such as buttons to perform actions and toggles or switches to present selections. In contrast, listing too many items in a pull-down buttons menu can slow people down because it takes longer to find a specific item. Display a succinct menu title only if it adds meaning. In general, a pull-down buttons contentcombined with descriptive menu itemsprovides all the context people need, making a menu title unnecessary. Let people know when a pull-down button’s menu item is destructive, and ask them to confirm their intent. Menus use red text to highlight actions that you identify as potentially destructive. When people choose a destructive action, the system displays an action sheet (i OS) or popover (i Pad OS) in which they can confirm their choice or cancel the action. Because an action sheet appears in a different location from the menu and requires deliberate dismissal, it can help people avoid losing data by mistake. Include an interface icon with a menu item when it provides value. If you need to clarify an item’s meaning, you can display an icon or image after its label. Using SF Symbols for this purpose can help you provide a familiar experience while ensuring that the symbol remains aligned with the text at every scale. Not supported in tv OS or watch OS.i OS, i Pad OSNote You can also let people reveal a pull-down menu by performing a specific gesture on a button. For example, in i OS 14 and later, Safari responds to a touch and hold gesture on the Tabs button by displaying a menu of tab-related actions, like New Tab and Close All Tabs. Consider using a More pull-down button to present items that don’t need prominent positions in the main interface. A More button can help you offer a range of items where space is constrained, but it can also hinder discoverability. Although people generally understand that a More button offers additional functionality related to the current context, the ellipsis icon doesn’t necessarily help them predict its contents. To design an effective More button, weigh the convenience of its size against its impact on discoverability to find a balance that works in your app. Create a More button by using the ellipsis.circle symbol.