IconButton
Composable Component
Wear Material IconButton
is a circular, icon-only button with transparent background and no
border. It offers a single slot to take icon or image content.
Android
@Composable
public fun IconButton(
onClick: () -> Unit,
modifier: Modifier = Modifier,
onLongClick: (() -> Unit)? = null,
onLongClickLabel: String? = null,
enabled: Boolean = true,
shapes: IconButtonShapes = IconButtonDefaults.shapes(),
colors: IconButtonColors = IconButtonDefaults.iconButtonColors(),
border: BorderStroke? = null,
interactionSource: MutableInteractionSource? = null,
content: @Composable BoxScope.() -> Unit,
)
Parameters
onClick | Will be called when the user clicks the button. |
modifier | Modifier to be applied to the button. |
onLongClick | Called when this button is long clicked (long-pressed). When this callback is set, onLongClickLabel should be set as well. |
onLongClickLabel | Semantic / accessibility label for the onLongClick action. |
enabled | Controls the enabled state of the button. When false , this button will not be clickable. |
shapes | Defines the shape for this button. Defaults to a static shape based on IconButtonDefaults.shape , but animated versions are available through IconButtonDefaults.animatedShapes . |
colors | IconButtonColors that will be used to resolve the background and icon color for this button in different states. |
border | Optional BorderStroke for the icon button border. |
interactionSource | an optional hoisted MutableInteractionSource for observing and emitting Interaction s for this button. You can use this to change the button's appearance or preview the button in different states. Note that if null is provided, interactions will still happen internally. |
content | The content displayed on the icon button, expected to be icon or image. |
Create your own Component Library
Material Components are meant to be used as is and they do not allow customizations. To build your own Jetpack Compose component library use Compose Unstyled