Skip to main content

SelectionMenu

iOS Android
SelectionMenu on iOS SelectionMenu on Android

Native selection menu with modal and embedded modes.

Props

PropTypeDescription
options{ label: string; data: string }[]Array of options to display
selectedstring | nullCurrently selected option's data value
disabledbooleanDisables the menu
placeholderstringPlaceholder text when no selection
presentation'modal' | 'embedded'Presentation mode (default: 'modal')
visiblebooleanControls modal mode menu visibility
onSelect(data, label, index) => voidCalled when user selects an option
onRequestClose() => voidCalled when menu is dismissed without selection
android.material'system' | 'm3'Material Design style preference

Modes

  • Modal mode (default): Menu visibility controlled by visible prop. Use for custom trigger UI.
  • Embedded mode (presentation="embedded"): Native picker UI rendered inline. Menu managed internally.

Note: On iOS, modal mode uses a custom popover to enable programmatic presentation. For the full native menu experience (system animations, scroll physics), use embedded mode. This is an intentional trade-off: modal gives you control over the trigger UI, embedded gives you the complete system menu behavior.