Action Sheet presents a short list of actions for one object, anchored to the bottom of the screen.
Preview
A bottom anchored list of actions about one object. The scrim blocks everything behind it, so the sheet is a decision, not a panel. Live specimen: dismiss it from the close button or the scrim.
Action Sheet, shipped content
340 x 396, padding 24 20 20, gap 16, radius 32
Title of action sheet
Subheadline of action sheet
Content Slot, 300 x 140
The sheet is 396 tall by arithmetic, not by setting: 24 of top padding, then blocks of 60, 140 and 120 stacked 16 apart, then 20. It hugs, so a fuller slot grows the sheet and leaves padding and gaps alone. Enter and exit are not mirrors: in at 200 on decelerate, out at 120 on accelerate, both from the sheet preset in Motion foundations.
Content
The header block carries the message. Title 24/32 Semi Bold at minus 0.4 tracking, subheadline 16/24 Regular, 4 apart. The subheadline is a boolean; drop it and the sheet gives back 28.
Subheadline True, Subheadline False
block 300 x 60, then 300 x 32
Subheadline True, block 60 tall
Move to archive
Archived items stay searchable.
Subheadline False, block 32 tall
Move to archive
One line of subheadline is what the 60 assumes. Two lines make the block 84 and the sheet 420. Expected, not broken.
Properties
No variant axis. Two text properties, one boolean and one slot.
Property
Type
Default
Title
Text
Title of action sheet
Subheadline
Boolean
true
Subheadline Text
Text
Subheadline of action sheet
Content Slot
Slot
Empty
Action Sheet ships one variant. The two actions are Button instances, so type, style, size and state live on Button.
Tokens
Every value the component reads, resolved through its aliases to the primitive underneath.
Token
Light
Dark
Applied to
bg/white-0
#FFFFFF
#0E0E0F
Sheet fill
border/soft-100
#E9E9EA
#2F2F31
The 1px inside edge
text/strong-950
#0E0E0F
#FFFFFF
Title
text/sub-700
#48484A
#C7C7CC
Subheadline
fg/soft-500
#8E8E93
#AEAEB2
Close icon
brand/base
#155DFC
#2B7FFF
Filled fill, Link label
static/static-black-950
alpha 24
alpha 24
The scrim
Radius is dimensions/radius/3xl at 32 on the sheet and full on every button, the close included. The shadow is dropShadow/2xl, black at 12 percent and the same in both themes.
Guidelines
Do
Keep editingDelete draft
Put the destructive action last and give it the error tokens. A red row that always sits in the same place is a row people learn to look for.
Don't
ShareDuplicateRenameArchive
Do not stack four equal actions. A sheet settles one decision about one object. A list of everything you can do is a menu, and a menu goes in the slot.
iOS ships this pattern natively. On Android reach for a Modal Sheet instead.