---
title: "Button"
description: "Material Design filled button for TV."
type: "component"
---

<div class='type'>Composable Component</div>



Material Design filled button for TV.

<a id='references'></a>

<div class='sourceset sourceset-android'>Android</div>


```kotlin
@Composable
fun Button(
    onClick: () -> Unit,
    modifier: Modifier = Modifier,
    onLongClick: (() -> Unit)? = null,
    enabled: Boolean = true,
    scale: ButtonScale = ButtonDefaults.scale(),
    glow: ButtonGlow = ButtonDefaults.glow(),
    shape: ButtonShape = ButtonDefaults.shape(),
    colors: ButtonColors = ButtonDefaults.colors(),
    tonalElevation: Dp = Elevation.Level0,
    border: ButtonBorder = ButtonDefaults.border(),
    contentPadding: PaddingValues = ButtonDefaults.ContentPadding,
    interactionSource: MutableInteractionSource? = null,
    content: @Composable RowScope.() -> Unit,
)
```


#### Parameters

| | |
| --- | --- |
| onClick | called when this button is clicked |
| modifier | the `Modifier` to be applied to this button |
| onLongClick | called when this button is long clicked (long-pressed). |
| enabled | controls the enabled state of this button. When `false`, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services. |
| scale | Defines size of the Button relative to its original size. |
| glow | Shadow to be shown behind the Button. |
| shape | Defines the Button's shape. |
| colors | Color to be used for background and content of the Button |
| tonalElevation | tonal elevation used to apply a color shift to the button to give the it higher emphasis |
| border | Defines a border around the Button. |
| 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 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 of the button |






## Code Examples
### ButtonSample
```kotlin
@Composable
fun ButtonSample() {
    Button(onClick = {}) { Text("Button") }
}
```
### LikeButtonSample
```kotlin
@Composable
fun LikeButtonSample() {
    Button(
        onClick = { /* Do something! */ },
        contentPadding = ButtonDefaults.ButtonWithIconContentPadding,
    ) {
        Icon(
            Icons.Filled.Favorite,
            contentDescription = "Localized description",
            modifier = Modifier.size(ButtonDefaults.IconSize),
        )
        Spacer(Modifier.size(ButtonDefaults.IconSpacing))
        Text("Like")
    }
}
```

