ActionSheet
A modal sheet of contextual actions, the iOS action sheet idiom: a bottom sheet of choices summoned in response to a user action.
It poses an optional title and message, lists a set of actions (any of which can be destructive), and offers a Cancel. Selecting an action runs it and closes the sheet; tapping the scrim or Cancel closes it without acting. Pass a trigger label for a self-contained button that opens the sheet, or drive open / onOpenChange yourself. For a small contextual menu anchored to a control, reach for Dropdown or RowMenu instead.
On light glass, muted header text uses the stronger surface foreground to remain readable over the dimmed background.
iOS accessibility escape and Android system back request cancellation without running an action. An open child overlay handles the request first. Disabled actions do not disable cancellation, and a controlled owner can keep the sheet open. The visible Cancel row remains available to assistive technology.
iOS
Android
Web
tsx
Default
With a title and message
Destructive action
Disabled action
Controlled
Props
Do & Don’t
Right tool for the job
Don’t
Use an Action Sheet for a single yes/no confirmation; an Alert Dialog is the focused tool for that.
Do
Use an Action Sheet for a short list of choices triggered by a user action, with the dangerous option marked destructive.
Name the action, not a generic verb
Don’t
Generic labels force the user to re-read the title to know what each row does.
Do
Label each row with the action it performs (Take Photo, Delete File, Move).