CompactButton
Composable Component
Wear Material CompactButton that offers a single slot to take any content (text, icon or
image).
Android
Deprecated This overload is provided for backwards compatibility with Compose for Wear OS 1.0.A newer overload is available with an additional shape parameter.
@Composable
public fun CompactButton(
onClick: () -> Unit,
modifier: Modifier = Modifier,
enabled: Boolean = true,
colors: ButtonColors = ButtonDefaults.primaryButtonColors(),
backgroundPadding: Dp = ButtonDefaults.CompactButtonBackgroundPadding,
interactionSource: MutableInteractionSource = remember { MutableInteractionSource() },
content: @Composable BoxScope.() -> Unit,
): Unit
Parameters
| onClick | Will be called when the user clicks the button. |
| modifier | Modifier to be applied to the button. |
| enabled | Controls the enabled state of the button. When false, this button will not be clickable. |
| colors | ButtonColors that will be used to resolve the background and content color for this button in different states. See ButtonDefaults.buttonColors. |
| backgroundPadding | Increases the transparent clickable area around the background, defaults to ButtonDefaults.CompactButtonBackgroundPadding |
| interactionSource | The MutableInteractionSource representing the stream of Interactions for this Button. You can create and pass in your own remembered MutableInteractionSource if you want to observe Interactions and customize the appearance / behavior of this Button in different Interactions. |
| content | The content displayed on the CompactButton such as text, icon or image. |
Android
@Composable
public fun CompactButton(
onClick: () -> Unit,
modifier: Modifier = Modifier,
enabled: Boolean = true,
colors: ButtonColors = ButtonDefaults.primaryButtonColors(),
backgroundPadding: Dp = ButtonDefaults.CompactButtonBackgroundPadding,
interactionSource: MutableInteractionSource? = null,
shape: Shape = CircleShape,
border: ButtonBorder = ButtonDefaults.buttonBorder(),
content: @Composable BoxScope.() -> Unit,
)
Parameters
| onClick | Will be called when the user clicks the button. |
| modifier | Modifier to be applied to the button. |
| enabled | Controls the enabled state of the button. When false, this button will not be clickable. |
| colors | ButtonColors that will be used to resolve the background and content color for this button in different states. See ButtonDefaults.buttonColors. |
| backgroundPadding | Increases the transparent clickable area around the background, defaults to ButtonDefaults.CompactButtonBackgroundPadding |
| interactionSource | an optional hoisted MutableInteractionSource for observing and emitting Interactions 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. |
| shape | Defines the button's shape. It is strongly recommended to use the default as this shape is a key characteristic of the Wear Material Theme. |
| border | ButtonBorder that will be used to resolve the button border in different states. See ButtonDefaults.outlinedButtonBorder. |
| content | The content displayed on the CompactButton such as text, icon or image. |
Code Examples
CompactButtonWithIcon
@Composable
fun CompactButtonWithIcon() {
CompactButton(onClick = { /* Do something */ }, enabled = true) {
Icon(
painter = painterResource(id = R.drawable.ic_airplanemode_active_24px),
contentDescription = "airplane",
modifier =
Modifier.size(ButtonDefaults.SmallIconSize)
.wrapContentSize(align = Alignment.Center),
)
}
}
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
