ButtonDefaults

object ButtonDefaults


Summary

Public functions

ButtonBorder
@Composable
border(
    border: Border,
    focusedBorder: Border,
    pressedBorder: Border,
    disabledBorder: Border,
    focusedDisabledBorder: Border
)

Creates a ButtonBorder that represents the default Borders applied on a FilledButton in different Interaction states.

ButtonColors
@Composable
colors(
    containerColor: Color,
    contentColor: Color,
    focusedContainerColor: Color,
    focusedContentColor: Color,
    pressedContainerColor: Color,
    pressedContentColor: Color,
    disabledContainerColor: Color,
    disabledContentColor: Color
)

Creates a ButtonColors that represents the default colors used in a FilledButton.

ButtonGlow
glow(glow: Glow, focusedGlow: Glow, pressedGlow: Glow)

Creates a ButtonGlow that represents the default Glows used in a FilledButton.

ButtonScale
scale(
    scale: @FloatRange(from = 0.0) Float,
    focusedScale: @FloatRange(from = 0.0) Float,
    pressedScale: @FloatRange(from = 0.0) Float,
    disabledScale: @FloatRange(from = 0.0) Float,
    focusedDisabledScale: @FloatRange(from = 0.0) Float
)

Creates a ButtonScale that represents the default scales used in a FilledButton. scales are used to modify the size of a composable in different Interaction states e.g. 1f (original) in default state, 1.2f (scaled up) in focused state, 0.8f (scaled down) in pressed state, etc.

ButtonShape
shape(
    shape: Shape,
    focusedShape: Shape,
    pressedShape: Shape,
    disabledShape: Shape,
    focusedDisabledShape: Shape
)

Creates a ButtonShape that represents the default container shapes used in a FilledButton.

Public properties

PaddingValues
PaddingValues
Dp

The default size of the icon when used inside any button.

Dp

The default size of the spacing between an icon and a text when they used inside any button.

Public functions

border

Added in 1.0.0
@Composable
fun border(
    border: Border = Border.None,
    focusedBorder: Border = border,
    pressedBorder: Border = focusedBorder,
    disabledBorder: Border = border,
    focusedDisabledBorder: Border = Border( border = BorderStroke( width = 1.5.dp, color = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.2f) ), shape = ContainerShape )
): ButtonBorder

Creates a ButtonBorder that represents the default Borders applied on a FilledButton in different Interaction states.

Parameters
border: Border = Border.None

the Border to be used for this Button when enabled

focusedBorder: Border = border

the Border to be used for this Button when focused

pressedBorder: Border = focusedBorder

the Border to be used for this Button when pressed

disabledBorder: Border = border

the Border to be used for this Button when disabled

focusedDisabledBorder: Border = Border( border = BorderStroke( width = 1.5.dp, color = MaterialTheme.colorScheme.onSurfaceVariant.copy(alpha = 0.2f) ), shape = ContainerShape )

the Border to be used for this Button when disabled and focused

colors

@Composable
fun colors(
    containerColor: Color = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.8f),
    contentColor: Color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.8f),
    focusedContainerColor: Color = MaterialTheme.colorScheme.onSurface,
    focusedContentColor: Color = MaterialTheme.colorScheme.inverseOnSurface,
    pressedContainerColor: Color = focusedContainerColor,
    pressedContentColor: Color = focusedContentColor,
    disabledContainerColor: Color = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.4f),
    disabledContentColor: Color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.4f)
): ButtonColors

Creates a ButtonColors that represents the default colors used in a FilledButton.

Parameters
containerColor: Color = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.8f)

the container color of this Button when enabled

contentColor: Color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.8f)

the content color of this Button when enabled

focusedContainerColor: Color = MaterialTheme.colorScheme.onSurface

the container color of this Button when enabled and focused

focusedContentColor: Color = MaterialTheme.colorScheme.inverseOnSurface

the content color of this Button when enabled and focused

pressedContainerColor: Color = focusedContainerColor

the container color of this Button when enabled and pressed

pressedContentColor: Color = focusedContentColor

the content color of this Button when enabled and pressed

disabledContainerColor: Color = MaterialTheme.colorScheme.surfaceVariant.copy(alpha = 0.4f)

the container color of this Button when not enabled

disabledContentColor: Color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.4f)

the content color of this Button when not enabled

glow

Added in 1.0.0
fun glow(glow: Glow = Glow.None, focusedGlow: Glow = glow, pressedGlow: Glow = glow): ButtonGlow

Creates a ButtonGlow that represents the default Glows used in a FilledButton.

Parameters
glow: Glow = Glow.None

the Glow behind this Button when enabled

focusedGlow: Glow = glow

the Glow behind this Button when focused

pressedGlow: Glow = glow

the Glow behind this Button when pressed

scale

Added in 1.0.0
fun scale(
    scale: @FloatRange(from = 0.0) Float = 1.0f,
    focusedScale: @FloatRange(from = 0.0) Float = 1.1f,
    pressedScale: @FloatRange(from = 0.0) Float = scale,
    disabledScale: @FloatRange(from = 0.0) Float = scale,
    focusedDisabledScale: @FloatRange(from = 0.0) Float = disabledScale
): ButtonScale

Creates a ButtonScale that represents the default scales used in a FilledButton. scales are used to modify the size of a composable in different Interaction states e.g. 1f (original) in default state, 1.2f (scaled up) in focused state, 0.8f (scaled down) in pressed state, etc.

Parameters
scale: @FloatRange(from = 0.0) Float = 1.0f

the scale to be used for this Button when enabled

focusedScale: @FloatRange(from = 0.0) Float = 1.1f

the scale to be used for this Button when focused

pressedScale: @FloatRange(from = 0.0) Float = scale

the scale to be used for this Button when pressed

disabledScale: @FloatRange(from = 0.0) Float = scale

the scale to be used for this Button when disabled

focusedDisabledScale: @FloatRange(from = 0.0) Float = disabledScale

the scale to be used for this Button when disabled and focused

shape

Added in 1.0.0
fun shape(
    shape: Shape = ContainerShape,
    focusedShape: Shape = shape,
    pressedShape: Shape = shape,
    disabledShape: Shape = shape,
    focusedDisabledShape: Shape = disabledShape
): ButtonShape

Creates a ButtonShape that represents the default container shapes used in a FilledButton.

Parameters
shape: Shape = ContainerShape

the shape used when the Button is enabled, and has no other Interactions.

focusedShape: Shape = shape

the shape used when the Button is enabled and focused.

pressedShape: Shape = shape

the shape used when the Button is enabled pressed.

disabledShape: Shape = shape

the shape used when the Button is not enabled.

focusedDisabledShape: Shape = disabledShape

the shape used when the Button is not enabled and focused.

Public properties

ButtonWithIconContentPadding

Added in 1.0.0
val ButtonWithIconContentPaddingPaddingValues

ContentPadding

Added in 1.0.0
val ContentPaddingPaddingValues

IconSize

Added in 1.0.0
val IconSizeDp

The default size of the icon when used inside any button.

IconSpacing

Added in 1.0.0
val IconSpacingDp

The default size of the spacing between an icon and a text when they used inside any button.