Card
Android
Component in Wear Material 3 Compose
Base level Wear Material 3 [Card] that offers a single slot to take any content.
Is used as the container for more opinionated [Card] components that take specific content such as icons, images, titles, subtitles and labels.
The [Card] is Rectangle shaped rounded corners by default.
Cards can be enabled or disabled. A disabled card will not respond to click events.
Last updated:
Installation
dependencies {
implementation("androidx.wear.compose:compose-material3:1.0.0-alpha27")
}
Overloads
@Composable
fun Card(
onClick: () -> Unit,
modifier: Modifier = Modifier,
onLongClick: (() -> Unit)? = null,
onLongClickLabel: String? = null,
enabled: Boolean = true,
shape: Shape = CardDefaults.shape,
colors: CardColors = CardDefaults.cardColors(),
border: BorderStroke? = null,
contentPadding: PaddingValues = CardDefaults.ContentPadding,
interactionSource: MutableInteractionSource? = null,
content: @Composable ColumnScope.() -> Unit,
)
Parameters
name | description |
---|---|
onClick | Will be called when the user clicks the card |
modifier | Modifier to be applied to the card |
onLongClick | Called when this card 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 card. When false, this card will not be clickable and there will be no ripple effect on click. Wear cards do not have any specific elevation or alpha differences when not enabled - they are simply not clickable. |
shape | Defines the card's shape. It is strongly recommended to use the default as this shape is a key characteristic of the Wear Material Theme |
colors | [CardColors] that will be used to resolve the colors used for this card in different states. See [CardDefaults.cardColors]. |
border | A BorderStroke object which is used for drawing outlines. |
contentPadding | The spacing values to apply internally between the container and the content |
interactionSource | an optional hoisted [MutableInteractionSource] for observing and emitting [Interaction]s for this card. You can use this to change the card's appearance or preview the card in different states. Note that if null is provided, interactions will still happen internally. |
content | The main slot for a content of this card |
Code Examples
CardSample
@Composable
fun CardSample() {
Card(
onClick = { /* Do something */ },
) {
Text("Card")
}
}
CardWithOnLongClickSample
@Composable
fun CardWithOnLongClickSample(onLongClickHandler: () -> Unit) {
Card(
onClick = { /* Do something */ },
onLongClick = onLongClickHandler,
onLongClickLabel = "Long click"
) {
Text("Card with long click")
}
}