Build Jetpack Compose UIs with Material Design 3, the next evolution of Material Design. Material 3 includes updated theming and components and Material You personalization features like dynamic color, and is designed to be cohesive with the new Android 12 visual style and system UI.
Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
02
Material Design standard icon button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
04
Material Design standard icon toggle button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
06
Material Design input chip.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
08
Label component that will append a
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
09 to
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
10.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
12
Material Design large floating action button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
14
Material Design large top app bar.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
16
Material Design tab.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
18
Indeterminate Material Design linear progress indicator.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
20
This function is deprecated. Use the overload that takes `progress` as a lambda
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
22
Determinate Material Design linear progress indicator.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
24
Material Design list item.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
26
Material Theming refers to the customization of your Material Design app to better reflect your product’s brand.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
28
Material Design medium top app bar.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
30
Material Design modal bottom sheet.
android
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
32
Content inside of a modal navigation drawer.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
34
Material Design navigation drawer.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
36
Material Segmented Button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
38
Material Design bottom navigation bar.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
40
Material Design navigation drawer item.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
42
Material Design bottom navigation rail.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
44
Material Design navigation rail item.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
46
Material Design outlined button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
48
Material Design outlined card.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
50
Material Design outlined card.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
52
Material Design outlined icon button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
54
Material Design outlined icon toggle button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
56
Material Design outlined text field.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
58
Material Design outlined text field.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
60
Content inside of a permanent navigation drawer.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
62
Material Design navigation permanent drawer.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
64
Material Design Scrollable Primary tabs
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
66
Material Design Fixed Primary tabs
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
68
This function is used to set the current value of
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
69, merging the given style with the current style values for any missing attributes.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
71
Material Design radio button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
73
Material Design Range slider.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
75
Material Design Range slider.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
77
Material Design Range slider.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
79
Rich text tooltip that allows the user to pass in a title, text, and action.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
81
Material Design layout.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
83
Material Design tabs
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
85
Material Design search.
android
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
87
Material Design Scrollable Secondary tabs
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
89
Material Design Fixed Secondary tabs
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
91
Material Segmented Button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
93
Material Design slider.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
95
Material Design slider.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
97
Material Design slider.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
99
Material Design small floating action button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]01
This function is deprecated. Use TopAppBar instead.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]03
Material Design snackbar.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]05
Material Design snackbar.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]07
Host for
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]08s to be used in
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]09 to properly show, hide and dismiss items based on Material specification and the
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]10.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]12
Material Design suggestion chip.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]14
Material surface is the central metaphor in material design.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]16
Material surface is the central metaphor in material design.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]18
Material surface is the central metaphor in material design.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]20
Material surface is the central metaphor in material design.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]22
This function is deprecated. Use SwipeToDismissBox instead
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]24
A composable that can be dismissed by swiping left or right.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]26
Material Design Switch.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]28
Material Design tab.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]30
Material Design tab.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]32
Material Design tabs
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]34
High level element that displays text and provides semantics / accessibility information.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]36
High level element that displays text and provides semantics / accessibility information.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]38
Material Design text button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]40
Material Design filled text field.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]42
Material Design filled text field.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]44
Time pickers help users select and set a specific time.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]46
Material Design time picker.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]48
Material TooltipBox that wraps a composable with a tooltip.
Cmn
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]49
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]50
Constructor extension function for
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]49
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]53
Material Design small top app bar.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]55
Material Design checkbox parent.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]57
Material Design divider.
Cmn
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]58
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]59
The Material color system contains pairs of colors that are typically used for the background and content color inside a component.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}09
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]61
Returns a dark Material color scheme.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}09
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]63
Creates a dark dynamic color scheme.
android
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}09
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]65
Creates a light dynamic color scheme.
android
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]66
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]67
Formats a UTC timestamp into a string with a given date format skeleton.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}09
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]69
Returns a light Material color scheme.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}07
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]71
Creates a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}07 that is remembered across compositions.
Cmn
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]73
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]74
Create and
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]75 a
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]73.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}32
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]78
Creates a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}32 for a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}35 that is remembered across compositions.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}37
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]82
Creates a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}37 for a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}36 that is remembered across compositions.
Cmn
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]85
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]86
Create and
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]75 a
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]85.
Cmn
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]89
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]90
Create and
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]75 a
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]89 for
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]93.
android
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]89
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]95
Create and
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]75 a
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]89 for
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}17.
Cmn
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]99
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
00
Create and
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]75 a
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]99.
Cmn
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
03
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
04
Creates a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
03 for a time picker that is remembered across compositions and configuration changes.
Cmn
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]49
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
07
Create and remember the default
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]49 for
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
09.
Cmn
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
10
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
11
Creates a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
10 that is remembered across compositions.
Cmn
Extension functions summary
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
14
Material Design navigation bar item.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
16
Plain tooltip that provides a descriptive message.
Cmn
android
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
18
Material Segmented Button.
Cmn
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}87
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
20
Material Segmented Button.
Cmn
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]58
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
22
The Material color system contains pairs of colors that are typically used for the background and content color inside a component.
Cmn
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
24
Reserves at least 48.dp in size to disambiguate touch interactions if the element would measure smaller.
Cmn
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]58
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
26
Computes the surface tonal color at different elevation levels e.g. surface1 through surface5.
Cmn
Top-level properties summary
Top-level functions
AlertDialog
@ExperimentalMaterial3Api @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,androidx.compose.ui.Modifier,androidx.compose.ui.window.DialogProperties,kotlin.Function0%29][
onDismissRequest: [] -> Unit, modifier: Modifier = Modifier, properties: DialogProperties = DialogProperties[], content: @Composable [] -> Unit ]: Unit
Basic alert dialog dialog.
Dialogs provide important prompts in a user flow. They can require an action, communicate information, or help users accomplish a task.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
27 or
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
28
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23s.
Basic alert dialog usage with custom content:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
30
called when the user tries to dismiss the Dialog by clicking outside or pressing the back button. This is not called when the dismiss button is clicked.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this dialog's content.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
33
typically platform specific properties to further configure the dialog.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of the dialog
AlertDialog
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
Material Design basic dialog.
Dialogs provide important prompts in a user flow. They can require an action, communicate information, or help users accomplish a task.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
30
called when the user tries to dismiss the Dialog by clicking outside or pressing the back button. This is not called when the dismiss button is clicked.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
37
button which is meant to confirm a proposed action, thus resolving what triggered the dialog. The dialog does not set up any events for this button so they need to be set up by the caller.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this dialog
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
40
button which is meant to dismiss the dialog. The dialog does not set up any events for this button so they need to be set up by the caller.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
41
optional icon that will appear above the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
42 or above the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
43, in case a title was not provided.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
44
title which should specify the purpose of the dialog. The title is not mandatory, because there may be sufficient information inside the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
43.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
46
text which presents the details regarding the dialog's purpose.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
47
defines the shape of this dialog's container
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
48
the color used for the background of this dialog. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
50
the content color used for the icon.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
51
the content color used for the title.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
52
the content color used for the text.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
53
when
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
54 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
33
typically platform specific properties to further configure the dialog.
AssistChip
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
Material Design assist chip.
Chips help people enter information, make selections, filter content, or trigger actions. Chips can show multiple interactive elements together in the same area, such as a list of selectable movie times, or a series of email contacts.
Assist chips represent smart or automated actions that can span multiple apps, such as opening a calendar event from the home screen. Assist chips function as though the user asked an assistant to complete the action. They should appear dynamically and contextually in a UI.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this chip is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
60
text label for this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this chip. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
optional icon at the start of the chip, preceding the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
66 text
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
optional icon at the end of the chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
68
defines the shape of this chip's container, border [when
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
69 is not null], and shadow [when using
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
70]
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
71
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
72 that will be used to resolve the colors used for this chip in different states. See
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
73.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
74
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
75 used to resolve the elevation for this chip in different states. This controls the size of the shadow below the chip. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
77.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
78
the border to draw around the container of this chip. Pass
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 for no border. See
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
80.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this chip. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this chip in different states.
Badge
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
A badge represents dynamic information such as a number of pending requests in a navigation bar.
Badges can be icon only or contain short text.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this badge
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
89
the color used for the background of this badge
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this badge. Defaults to either the matching content color for
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
91, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
91 is not a color from the theme.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
94
optional content to be rendered inside this badge
BadgedBox
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
Material Design badge box.
A badge represents dynamic information such as a number of pending requests in a navigation bar.
Badges can be icon only or contain short text.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
27 or
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
28
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23s.
Basic alert dialog usage with custom content:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
30
called when the user tries to dismiss the Dialog by clicking outside or pressing the back button. This is not called when the dismiss button is clicked.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this dialog's content.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
33
typically platform specific properties to further configure the dialog.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of the dialog
BottomAppBar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}2
Material Design bottom app bar.
A bottom app bar displays navigation and key actions at the bottom of mobile screens.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
07
the color used for the background of this BottomAppBar. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this BottomAppBar. Defaults to either the matching content color for
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
10, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
10 is not a color from the theme.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
13
when
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
10 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
17
the padding applied to the content of this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
18
a window insets that app bar will respect.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
19
the content of this BottomAppBar. The default layout here is a
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
20, so content inside will be placed horizontally.
BottomAppBar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}3
Material Design bottom app bar.
A bottom app bar displays navigation and key actions at the bottom of mobile screens.
Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
23
the icon content of this BottomAppBar. The default layout here is a
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
20, so content inside will be placed horizontally.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
27
optional floating action button at the end of this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
07
the color used for the background of this BottomAppBar. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this BottomAppBar. Defaults to either the matching content color for
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
31, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
31 is not a color from the theme.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
13
when
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
31 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
17
the padding applied to the content of this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
18
a window insets that app bar will respect.
BottomAppBar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}6
Material Design bottom app bar.
A bottom app bar displays navigation and key actions at the bottom of mobile screens.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
07
the color used for the background of this BottomAppBar. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this BottomAppBar. Defaults to either the matching content color for
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
47, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
47 is not a color from the theme.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
13
when
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
47 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
17
the padding applied to the content of this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
18
a window insets that app bar will respect.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
56
a
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
57 which holds various offset values that will be applied by this bottom app bar to set up its height. A scroll behavior is designed to work in conjunction with a scrolled content to change the bottom app bar appearance as the content scrolls. See
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
58.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
19
the content of this BottomAppBar. The default layout here is a
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
20, so content inside will be placed horizontally.
BottomAppBar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}7
Material Design bottom app bar.
A bottom app bar displays navigation and key actions at the bottom of mobile screens.
Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
62 to customize its nested scrolling behavior when working in conjunction with a scrolling content looks like:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
0
Also see
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}51.
Parameters
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
23
the icon content of this BottomAppBar. The default layout here is a
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
20, so content inside will be placed horizontally.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
27
optional floating action button at the end of this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
07
the color used for the background of this BottomAppBar. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this BottomAppBar. Defaults to either the matching content color for
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
72, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
72 is not a color from the theme.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
13
when
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
72 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
17
the padding applied to the content of this BottomAppBar
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
18
a window insets that app bar will respect.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
56
a
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
57 which holds various offset values that will be applied by this bottom app bar to set up its height. A scroll behavior is designed to work in conjunction with a scrolled content to change the bottom app bar appearance as the content scrolls. See
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
58.
BottomSheetScaffold
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
1
Material Design standard bottom sheet scaffold.
Standard bottom sheets co-exist with the screen’s main UI region and allow for simultaneously viewing and interacting with both regions. They are commonly used to keep a feature or secondary content visible on screen when content in main UI region is frequently scrolled or panned.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
2
Parameters
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
84
the content of the bottom sheet
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this scaffold
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
87
the state of the bottom sheet scaffold
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
88
the height of the bottom sheet when it is collapsed
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
89
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
90 that defines what the maximum width the sheet will take. Pass in
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
91 for a sheet that spans the entire screen width.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
92
the shape of the bottom sheet
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
93
the background color of the bottom sheet
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
94
the preferred content color provided by the bottom sheet to its children. Defaults to the matching content color for
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
95, or if that is not a color from the theme, this will keep the same content color set above the bottom sheet.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
96
the tonal elevation of the bottom sheet
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
97
the shadow elevation of the bottom sheet
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
98
optional visual marker to pull the scaffold's bottom sheet
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
99
whether the sheet swiping is enabled and should react to the user's input
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}00
top app bar of the screen, typically a
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}01
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}02
component to host
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]08s that are pushed to be shown via
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}04, typically a
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}05
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}06
the color used for the background of this scaffold. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this scaffold. Defaults to either the matching content color for
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}09, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}09 is not a color from the theme.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}12
content of the screen. The lambda receives a
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}13 that should be applied to the content root via Modifier.padding and Modifier.consumeWindowInsets to properly offset top and bottom bars. If using Modifier.verticalScroll, apply this modifier to the child of the scroll, and not on the scroll itself.
Button
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
3
Material Design button.
Buttons help people initiate actions, from sending an email, to sharing a document, to liking a post.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
4
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
5
Choose the best button for an action based on the amount of emphasis it needs. The more important an action is, the higher emphasis its button should be.
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 21 for a medium-emphasis button with a border.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 19 for an import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
} 21 with a shadow.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 22 for a low-emphasis button with no border.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 20 for a middle ground between import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
} 21 and import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
} 18.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 components will be set to
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}23.
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}29
defines the shape of this button's container, border [when
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}30 is not null], and shadow [when using
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}31]
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}32
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}33 that will be used to resolve the colors for this button in different states. See
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}34.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}35
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}36 used to resolve the elevation for this button in different states. This controls the size of the shadow below the button. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}38 and
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}39.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
the border to draw around the container of this button
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}41
the spacing values to apply internally between the container and the content
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this button in different states.
Card
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
6
Material Design filled card.
Cards contain contain content and actions that relate information about a subject. Filled cards provide subtle separation from the background. This has less emphasis than elevated or outlined cards.
This Card does not handle input events - see the other Card overloads if you want a clickable or selectable Card.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
7
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this card
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}49
defines the shape of this card's container, border [when
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}50 is not null], and shadow [when using
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}51]
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}52
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}53 that will be used to resolve the colors used for this card in different states. See
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}54.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}55
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}56 used to resolve the elevation for this card in different states. This controls the size of the shadow below the card. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
the border to draw around the container of this card
Card
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
8
Material Design filled card.
Cards contain contain content and actions that relate information about a subject. Filled cards provide subtle separation from the background. This has less emphasis than elevated or outlined cards.
This Card handles click events, calling its
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}60 lambda.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
9
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this card is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this card
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this card. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}49
defines the shape of this card's container, border [when
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}67 is not null], and shadow [when using
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}68]
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}52
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}53 that will be used to resolve the color[s] used for this card in different states. See
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}54.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}55
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}56 used to resolve the elevation for this card in different states. This controls the size of the shadow below the card. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
the border to draw around the container of this card
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this card. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this card in different states.
CenterAlignedTopAppBar
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}0
Material Design center-aligned small top app bar.
Top app bars display information and actions at the top of a screen.
This small top app bar has a header title that is horizontally aligned to the center.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79, then this checkbox will not be interactable, unless something else handles its input events and updates its state.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this checkbox
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this checkbox. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}90
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}91 that will be used to resolve the colors used for this checkbox in different states. See
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}92.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this checkbox. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this checkbox in different states.
CircularProgressIndicator
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}5
Indeterminate Material Design circular progress indicator.
Progress indicators express an unspecified wait time or display the duration of a process.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}000
color of this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}001
stroke width of this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}002
color of the track behind the indicator, visible when the progress has not reached the area of the overall indicator yet
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}003
stroke cap to use for the ends of this progress indicator
CircularProgressIndicator
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}7
CircularProgressIndicator
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}8
Determinate Material Design circular progress indicator.
Progress indicators express an unspecified wait time or display the duration of a process.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}000
color of this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}001
stroke width of this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}002
color of the track behind the indicator, visible when the progress has not reached the area of the overall indicator yet
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}013
stroke cap to use for the ends of this progress indicator
DatePicker
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}0
Material Design date picker.
Date pickers let people select a date and preferably should be embedded into Dialogs. See DatePickerDialog.
By default, a date picker lets you pick a date via a calendar UI. However, it also allows switching into a date input mode for a manual entry of dates using the numbers on a keyboard.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this date picker
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}019
a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}020 that provides formatting skeletons for dates display
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}021
the title to be displayed in the date picker
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}022
the headline to be displayed in the date picker
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}023
indicates if this DatePicker should show a mode toggle action that transforms it into a date input
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}024
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}025 that will be used to resolve the colors used for this date picker in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}026.
DatePickerDialog
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}4
Material Design date picker dialog.
A dialog for displaying a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}35. Date pickers let people select a date.
A sample for displaying a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}35 in a dialog:
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}5
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
30
called when the user tries to dismiss the Dialog by clicking outside or pressing the back button. This is not called when the dismiss button is clicked.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
37
button which is meant to confirm a proposed action, thus resolving what triggered the dialog. The dialog does not set up any events for this button, nor does it control its enablement, so those need to be set up by the caller.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this dialog's content.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
40
button which is meant to dismiss the dialog. The dialog does not set up any events for this button so they need to be set up by the caller.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}034
defines the dialog's surface shape as well its shadow
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}035
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}036 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a higher the elevation will result in a darker color in light theme and lighter color in dark theme
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}024
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}025 that will be used to resolve the colors used for this date picker in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}026.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}041
typically platform specific properties to further configure the dialog
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}042
the content of the dialog [i.e. a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}35, for example]
DatePickerState
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}6
Creates a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}32.
Note that in most cases, you are advised to use the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}016 when in a composition.
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}046
a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}047 to be used when formatting dates, determining the input format, and more
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}048
timestamp in UTC milliseconds from the epoch that represents an initial selection of a date. Provide a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 to indicate no selection. Note that the state's
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}050 will provide a timestamp that represents the start of the day, which may be different than the provided initialSelectedDateMillis.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}051
timestamp in UTC milliseconds from the epoch that represents an initial selection of a month to be displayed to the user. In case
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 is provided, the displayed month would be the current one.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}053
an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}054 that holds the year range that the date picker will be limited to
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}055
an initial
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}056 that this state will hold
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}057
a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}014 that is consulted to check if a date is allowed. In case a date is not allowed to be selected, it will appear disabled in the UI.
DateRangePicker
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}7
Material Design date range picker.
Date range pickers let people select a range of dates and can be embedded into Dialogs.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this date range picker
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}019
a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}020 that provides formatting skeletons for dates display
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}065
the title to be displayed in the date range picker
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}066
the headline to be displayed in the date range picker
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}023
indicates if this DateRangePicker should show a mode toggle action that transforms it into a date range input
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}024
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}025 that will be used to resolve the colors used for this date range picker in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}026.
DateRangePickerState
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}9
Creates a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}37.
Note that in most cases, you are advised to use the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}060 when in a composition.
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}046
a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}047 to be used when formatting dates, determining the input format, and more
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}075
timestamp in UTC milliseconds from the epoch that represents an initial selection of a start date. Provide a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 to indicate no selection.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}077
timestamp in UTC milliseconds from the epoch that represents an initial selection of an end date. Provide a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 to indicate no selection.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}079
timestamp in UTC milliseconds from the epoch that represents an initial selection of a month to be displayed to the user. By default, in case an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}080 is provided, the initial displayed month would be the month of the selected date. Otherwise, in case
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 is provided, the displayed month would be the current one.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}053
an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}054 that holds the year range that the date picker will be limited to
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}055
an initial
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}056 that this state will hold
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}057
a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}014 that is consulted to check if a date is allowed. In case a date is not allowed to be selected, it will appear disabled in the UI
Throws
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}088
if the initial timestamps do not fall within the year range this state is created with, or the end date precedes the start date, or when an end date is provided without a start date [e.g. the start date was null, while the end date was not].
DismissibleDrawerSheet
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
0
Content inside of a dismissible navigation drawer.
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this drawer's content
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}091
defines the shape of this drawer's container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}092
the color used for the background of this drawer. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}094
the preferred color for content inside this drawer. Defaults to either the matching content color for
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}095, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}095 is not a color from the theme.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}098
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}095 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}102
a window insets for the sheet.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}042
content inside of a dismissible navigation drawer
DismissibleNavigationDrawer
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
1
Material Design navigation drawer.
Navigation drawers provide ergonomic access to destinations in an app. They’re often next to app content and affect the screen’s layout grid.
Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
2
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}104
content inside this drawer
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this drawer
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}107
state of the drawer
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}108
whether or not the drawer can be interacted by gestures
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
content of the rest of the UI
DockedSearchBar
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
3
Material Design search.
A search bar represents a floating search field that allows users to enter a keyword or phrase and get relevant information. It can be used as a way to navigate through an app via search queries.
An active search bar expands into a search "view" and can be used to display dynamic suggestions.
Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
4
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}112
the query text to be shown in the search bar's input field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}113
the callback to be invoked when the input service updates the query. An updated text comes as a parameter of the callback.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}114
the callback to be invoked when the input service triggers the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}115 action. The current
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}116 comes as a parameter of the callback.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}117
whether this search bar is active
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}118
the callback to be invoked when this search bar's active state is changed
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this search bar
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this search bar. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}123
the placeholder to be displayed when the search bar's
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}116 is empty.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
the leading icon to be displayed at the beginning of the search bar container
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
the trailing icon to be displayed at the end of the search bar container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}127
the shape of this search bar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}128
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}129 that will be used to resolve the colors used for this search bar in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}130.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}131
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}132 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}135
the elevation for the shadow below the search bar
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this search bar. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this search bar in different states.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}042
the content of this search bar that will be displayed below the input field
DropdownMenu
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
5
Material Design dropdown menu.
Menus display a list of choices on a temporary surface. They appear when users interact with a button, action, or other control.
Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
6
Example usage with a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}155 to control the menu items scroll position:
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
7
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}156
whether the menu is expanded or not
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
30
called when the user requests to dismiss the menu, such as by tapping outside the menu's bounds
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to the menu's content
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}160
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}161 from the original position of the menu. The offset respects the LayoutDirection, so the offset's x position will be added in LTR and subtracted in RTL.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}162
a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}155 to used by the menu's content for items vertical scrolling
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}164
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}165 for further customization of this popup's behavior
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}042
the content of this dropdown menu, typically a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}148
DropdownMenuItem
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
8
Material Design dropdown menu item.
Menus display a list of choices on a temporary surface. They appear when users interact with a button, action, or other control.
Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
6
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}168
text of the menu item
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this menu item is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this menu item
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
optional leading icon to be displayed at the beginning of the item's text
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
optional trailing icon to be displayed at the end of the item's text. This trailing icon slot can also accept
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 to indicate a keyboard shortcut.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this menu item. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}177
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}178 that will be used to resolve the colors used for this menu item in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}179.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}180
the padding applied to the content of this menu item
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this menu item. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this menu item in different states.
ElevatedAssistChip
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]0
Material Design elevated assist chip.
Chips help people enter information, make selections, filter content, or trigger actions. Chips can show multiple interactive elements together in the same area, such as a list of selectable movie times, or a series of email contacts.
Assist chips represent smart or automated actions that can span multiple apps, such as opening a calendar event from the home screen. Assist chips function as though the user asked an assistant to complete the action. They should appear dynamically and contextually in a UI.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this chip is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
60
text label for this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this chip. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
optional icon at the start of the chip, preceding the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}194 text
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
optional icon at the end of the chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
68
defines the shape of this chip's container, border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}197 is not null], and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}198]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}199
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
72 that will be used to resolve the colors used for this chip in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}201.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}202
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
75 used to resolve the elevation for this chip in different states. This controls the size of the shadow below the chip. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}205.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
the border to draw around the container of this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this chip. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this chip in different states.
ElevatedButton
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]2
Material Design elevated button.
Buttons help people initiate actions, from sending an email, to sharing a document, to liking a post.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}226
defines the shape of this button's container, border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}227 is not null], and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}228]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}229
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}33 that will be used to resolve the colors for this button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}231.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}232
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}36 used to resolve the elevation for this button in different states. This controls the size of the shadow below the button. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}235.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
the border to draw around the container of this button
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}41
the spacing values to apply internally between the container and the content
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this button in different states.
ElevatedCard
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]4
Material Design elevated card.
Elevated cards contain content and actions that relate information about a subject. They have a drop shadow, providing more separation from the background than filled cards, but less than outlined cards.
This ElevatedCard does not handle input events - see the other ElevatedCard overloads if you want a clickable or selectable ElevatedCard.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this card
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}245
defines the shape of this card's container and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}246]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}247
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}53 that will be used to resolve the color[s] used for this card in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}249.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}250
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}56 used to resolve the elevation for this card in different states. This controls the size of the shadow below the card. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
ElevatedCard
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]6
Material Design elevated card.
Elevated cards contain content and actions that relate information about a subject. They have a drop shadow, providing more separation from the background than filled cards, but less than outlined cards.
This ElevatedCard handles click events, calling its
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}254 lambda.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this card is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this card
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this card. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}245
defines the shape of this card's container and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}261]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}247
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}53 that will be used to resolve the color[s] used for this card in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}249.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}250
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}56 used to resolve the elevation for this card in different states. This controls the size of the shadow below the card. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this card. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this card in different states.
ElevatedFilterChip
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]8
Material Design elevated filter chip.
Chips help people enter information, make selections, filter content, or trigger actions. Chips can show multiple interactive elements together in the same area, such as a list of selectable movie times, or a series of email contacts.
Filter chips use tags or descriptive words to filter content. They can be a good alternative to toggle buttons or checkboxes.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
0
Material Design elevated suggestion chip.
Chips help people enter information, make selections, filter content, or trigger actions. Chips can show multiple interactive elements together in the same area, such as a list of selectable movie times, or a series of email contacts.
Suggestion chips help narrow a user's intent by presenting dynamically generated suggestions, such as possible responses or search filters.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
1
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this chip is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
60
text label for this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this chip. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
41
optional icon at the start of the chip, preceding the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}284 text
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}285
defines the shape of this chip's container, border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}286 is not null], and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}287]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}288
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
72 that will be used to resolve the colors used for this chip in
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}290
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
75 used to resolve the elevation for this chip in different states. This controls the size of the shadow below the chip. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56 and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}294.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
the border to draw around the container of this chip different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}296.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this chip. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this chip in different states.
ExposedDropdownMenuBox
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
2
Material Design Exposed Dropdown Menu.
Menus display a list of choices on a temporary surface. They appear when users interact with a button, action, or other control.
Exposed dropdown menus, sometimes also called "spinners" or "combo boxes", display the currently selected item in a text field to which the menu is anchored. In some cases, it can accept and display user input [whether or not it’s listed as a menu choice], in which case it may be used to implement autocomplete.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
3
An example of an editable Exposed Dropdown Menu:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
4
ExtendedFloatingActionButton
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
5
Material Design extended floating action button.
Extended FABs help people take primary actions. They're wider than FABs to accommodate a text label and larger target area.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
6
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this FAB is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this FAB
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}310
defines the shape of this FAB's container and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}311]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}312
the color used for the background of this FAB. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this FAB. Defaults to either the matching content color for
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}315, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}315 is not a color from the theme.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}318
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}319 used to resolve the elevation for this FAB in different states. This controls the size of the shadow below the FAB. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this FAB. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this FAB in different states.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
19
the content of this FAB, typically a
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 label
ExtendedFloatingActionButton
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
7
Material Design extended floating action button.
Extended FABs help people take primary actions. They're wider than FABs to accommodate a text label and larger target area.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
8
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
9
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}168
label displayed inside this FAB
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}331
optional icon for this FAB, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this FAB is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this FAB
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}336
controls the expansion state of this FAB. In an expanded state, the FAB will show both the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}337 and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}338. In a collapsed state, the FAB will show only the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}337.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}310
defines the shape of this FAB's container and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}341]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}312
the color used for the background of this FAB. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this FAB. Defaults to either the matching content color for
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}345, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}345 is not a color from the theme.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}318
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}319 used to resolve the elevation for this FAB in different states. This controls the size of the shadow below the FAB. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this FAB. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this FAB in different states.
FilledIconButton
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
0
Material Design filled icon button.
Icon buttons help people take supplementary actions with a single tap. They’re used when a compact button is required, such as in a toolbar or image list.
Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
1
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this icon button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this icon button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}365
defines the shape of this icon button's container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}366
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}367 that will be used to resolve the colors used for this icon button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}368.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this icon button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this icon button in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this icon button, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
FilledIconToggleButton
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
2
Material Design filled icon toggle button.
Icon buttons help people take supplementary actions with a single tap. They’re used when a compact button is required, such as in a toolbar or image list.
Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
3
Parameters
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}83
whether this icon button is toggled on or off
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}380
called when this icon button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this icon button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}365
defines the shape of this icon button's container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}386
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}387 that will be used to resolve the colors used for this icon button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}388.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this icon button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this icon button in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this icon button, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
FilledTonalButton
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
4
Material Design filled tonal button.
Buttons help people initiate actions, from sending an email, to sharing a document, to liking a post.
Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
5
Choose the best button for an action based on the amount of emphasis it needs. The more important an action is, the higher emphasis its button should be.
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 18 for a high-emphasis button without a shadow, also known as a filled button.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 19 for a import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
} 20 with a shadow.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 21 for a medium-emphasis button with a border.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 22 for a low-emphasis button with no border.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 components will be set to
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}23.
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}410
defines the shape of this button's container, border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}411 is not null], and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}412]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}413
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}33 that will be used to resolve the colors for this button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}415.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}416
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}36 used to resolve the elevation for this button in different states. This controls the size of the shadow below the button. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
the border to draw around the container of this button
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}41
the spacing values to apply internally between the container and the content
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this button in different states.
FilledTonalIconButton
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
6
Material Design filled tonal icon button.
Icon buttons help people take supplementary actions with a single tap. They’re used when a compact button is required, such as in a toolbar or image list.
Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
7
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this icon button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this icon button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}365
defines the shape of this icon button's container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}437
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}367 that will be used to resolve the colors used for this icon button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}368.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this icon button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this icon button in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this icon button, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
FilledTonalIconToggleButton
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
8
Material Design filled tonal icon toggle button.
Icon buttons help people take supplementary actions with a single tap. They’re used when a compact button is required, such as in a toolbar or image list.
Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
9
Parameters
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}83
whether this icon button is toggled on or off
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}380
called when this icon button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this icon button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}365
defines the shape of this icon button's container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}459
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}387 that will be used to resolve the colors used for this icon button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}388.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this icon button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this icon button in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this icon button, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
FilterChip
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}0
Material Design filter chip.
Chips help people enter information, make selections, filter content, or trigger actions. Chips can show multiple interactive elements together in the same area, such as a list of selectable movie times, or a series of email contacts.
Filter chips use tags or descriptive words to filter content. They can be a good alternative to toggle buttons or checkboxes.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this chip is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
60
text label for this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this chip. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
optional icon at the start of the chip, preceding the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}479 text. When
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}480 is true, this icon may visually indicate that the chip is selected [for example, via a checkmark icon].
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
optional icon at the end of the chip
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}482
defines the shape of this chip's container, border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}483 is not null], and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}484]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}485
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}486 that will be used to resolve the colors used for this chip in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}487.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}488
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}489 used to resolve the elevation for this chip in different states. This controls the size of the shadow below the chip. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}491.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}492
the border to draw around the container of this chip. Pass
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 for no border. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}494.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this chip. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this chip in different states.
FloatingActionButton
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}3
Material Design floating action button.
The FAB represents the most important action on a screen. It puts key actions within reach.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this FAB is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this FAB
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}504
defines the shape of this FAB's container and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}505]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}312
the color used for the background of this FAB. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this FAB. Defaults to either the matching content color for
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}509, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}509 is not a color from the theme.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}318
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}319 used to resolve the elevation for this FAB in different states. This controls the size of the shadow below the FAB. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this FAB. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this FAB in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this FAB, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
HorizontalDivider
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}5
Material Design divider.
A divider is a thin line that groups content in lists and layouts.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this divider line.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}525
thickness of this divider line. Using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}526 will produce a single pixel divider regardless of screen density.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}527
color of this divider line.
Icon
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}6
A Material Design icon component that draws
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}88 using
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}89, with a default value of
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90. If
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}88 has no intrinsic size, this component will use the recommended default size. Icon is an opinionated component designed to be used with single-color icons so that they can be tinted correctly for the component they are placed in. For multicolored icons and icons that should not be tinted, use
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}532 for
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}89. For generic images that should not be tinted, and do not follow the recommended icon size, use the generic
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}534 instead. For a clickable icon, see
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}42.
To learn more about icons, see Material Design icons
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}536
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}537 to draw inside this icon
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}538
text used by accessibility services to describe what this icon represents. This should always be provided unless this icon is used for decorative purposes, and does not represent a meaningful action that a user can take. This text should be localized, such as by using androidx.compose.ui.res.stringResource or similar
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}541
tint to be applied to
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}88. If
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}532 is provided, then no tint is applied.
Icon
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}7
A Material Design icon component that draws
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}93 using
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}94, with a default value of
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90. If
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}93 has no intrinsic size, this component will use the recommended default size. Icon is an opinionated component designed to be used with single-color icons so that they can be tinted correctly for the component they are placed in. For multicolored icons and icons that should not be tinted, use
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}532 for
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}94. For generic images that should not be tinted, and do not follow the recommended icon size, use the generic
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}534 instead. For a clickable icon, see
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}42.
To learn more about icons, see Material Design icons
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}552
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}553 to draw inside this icon
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}538
text used by accessibility services to describe what this icon represents. This should always be provided unless this icon is used for decorative purposes, and does not represent a meaningful action that a user can take. This text should be localized, such as by using androidx.compose.ui.res.stringResource or similar
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}541
tint to be applied to
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}93. If
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}532 is provided, then no tint is applied.
Icon
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}8
A Material Design icon component that draws
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}98 using
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}99, with a default value of
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90. If
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}98 has no intrinsic size, this component will use the recommended default size. Icon is an opinionated component designed to be used with single-color icons so that they can be tinted correctly for the component they are placed in. For multicolored icons and icons that should not be tinted, use
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}532 for
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}99. For generic images that should not be tinted, and do not follow the recommended icon size, use the generic
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}534 instead. For a clickable icon, see
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}42.
To learn more about icons, see Material Design icons
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}568
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}569 to draw inside this icon
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}538
text used by accessibility services to describe what this icon represents. This should always be provided unless this icon is used for decorative purposes, and does not represent a meaningful action that a user can take. This text should be localized, such as by using androidx.compose.ui.res.stringResource or similar
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}541
tint to be applied to
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}98. If
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}532 is provided, then no tint is applied.
IconButton
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}9
Material Design standard icon button.
Icon buttons help people take supplementary actions with a single tap. They’re used when a compact button is required, such as in a toolbar or image list.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this icon button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this icon button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}584
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}367 that will be used to resolve the colors used for this icon button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}586.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this icon button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this icon button in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this icon button, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
IconToggleButton
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}01
Material Design standard icon toggle button.
Icon buttons help people take supplementary actions with a single tap. They’re used when a compact button is required, such as in a toolbar or image list.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this icon button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}603
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}387 that will be used to resolve the colors used for this icon button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}605.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this icon button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this icon button in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this icon button, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
InputChip
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}03
Material Design input chip.
Chips help people enter information, make selections, filter content, or trigger actions. Chips can show multiple interactive elements together in the same area, such as a list of selectable movie times, or a series of email contacts.
Input chips represent discrete pieces of information entered by a user.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this chip is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
60
text label for this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this chip
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this chip. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
optional icon at the start of the chip, preceding the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}622 text
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}623
optional avatar at the start of the chip, preceding the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}622 text
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
optional icon at the end of the chip
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}626
defines the shape of this chip's container, border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}627 is not null], and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}628]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}629
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
72 that will be used to resolve the colors used for this chip in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}631.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}632
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
75 used to resolve the elevation for this chip in different states. This controls the size of the shadow below the chip. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}635.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}636
the border to draw around the container of this chip. Pass
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 for no border. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}638.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this chip. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this chip in different states.
Label
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}08
Label component that will append a
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
09 to
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
10. The positioning logic uses
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}646.
Label appended to thumbs of Slider:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}09
Label appended to thumbs of RangeSlider:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}10
LargeFloatingActionButton
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}11
Material Design large floating action button.
The FAB represents the most important action on a screen. It puts key actions within reach.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this FAB is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this FAB
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}650
defines the shape of this FAB's container and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}651]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}312
the color used for the background of this FAB. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this FAB. Defaults to either the matching content color for
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}655, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}655 is not a color from the theme.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}318
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}319 used to resolve the elevation for this FAB in different states. This controls the size of the shadow below the FAB. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this FAB. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this FAB in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this FAB, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
LargeTopAppBar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}13
Material Design large top app bar.
Top app bars display information and actions at the top of a screen.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this tab is clicked
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}168
the text label displayed in this tab
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}331
the icon displayed in this tab. Should be 24.dp.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this tab. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}680
the color for the content of this tab when selected, and the color of the ripple.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}681
the color for the content of this tab when not selected
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this tab. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this tab in different states.
LinearProgressIndicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}16
Indeterminate Material Design linear progress indicator.
Progress indicators express an unspecified wait time or display the duration of a process.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}689
color of this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}690
color of the track behind the indicator, visible when the progress has not reached the area of the overall indicator yet
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}691
stroke cap to use for the ends of this progress indicator
LinearProgressIndicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}18
Determinate Material Design linear progress indicator.
Progress indicators express an unspecified wait time or display the duration of a process.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}689
color of this progress indicator
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}690
color of the track behind the indicator, visible when the progress has not reached the area of the overall indicator yet
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}691
stroke cap to use for the ends of this progress indicator
ListItem
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}20
Material Design list item.
Lists are continuous, vertical indexes of text or images.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to the list item
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}704
the content displayed above the headline content
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}705
the supporting content of the list item
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}706
the leading content of the list item
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}707
the trailing meta text, icon, switch or checkbox
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}708
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}709 that will be used to resolve the background and content color for this list item in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}710
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}711
the tonal elevation of this list item
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}712
the shadow elevation of this list item
MaterialTheme
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}25
Material Theming refers to the customization of your Material Design app to better reflect your product’s brand.
Material components such as
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}18 and
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}26 use values provided here when retrieving default values.
All values may be set by providing this component with the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}715,
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}716 attributes. Use this to configure the overall theme of elements within this MaterialTheme.
Any values that are not set will inherit the current value from the theme, falling back to the defaults if there is no parent MaterialTheme. This allows using a MaterialTheme at the top of your application, and then separate MaterialTheme[s] for different screens / parts of your UI, overriding only the parts of the theme definition that need to change.
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}717
A complete definition of the Material Color theme for this hierarchy
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}718
A set of corner shapes to be used as this hierarchy's shape system
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}719
A set of text styles to be used as this hierarchy's typography system
MediumTopAppBar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}26
Material Design medium top app bar.
Top app bars display information and actions at the top of a screen.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
30
Executes when the user clicks outside of the bottom sheet, after sheet animates to
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}722.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
Optional
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 for the bottom sheet.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}725
The state of the bottom sheet.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
89
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
90 that defines what the maximum width the sheet will take. Pass in
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
91 for a sheet that spans the entire screen width.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}729
The shape of the bottom sheet.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}730
The color used for the background of this bottom sheet
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
The preferred color for content inside this bottom sheet. Defaults to either the matching content color for
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}732, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}732 is not a color from the theme.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}735
The tonal elevation of this bottom sheet.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}736
Color of the scrim that obscures content when the bottom sheet is open.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}737
Optional visual marker to swipe the bottom sheet.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}738
window insets to be passed to the bottom sheet window via
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}13 params.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}740
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}741 for further customization of this modal bottom sheet's behavior.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}042
The content to be displayed inside the bottom sheet.
ModalDrawerSheet
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}30
Content inside of a modal navigation drawer.
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this drawer's content
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}745
defines the shape of this drawer's container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}092
the color used for the background of this drawer. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}094
the preferred color for content inside this drawer. Defaults to either the matching content color for
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}749, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}749 is not a color from the theme.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}752
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}749 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}102
a window insets for the sheet.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}042
content inside of a modal navigation drawer
ModalNavigationDrawer
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}31
Material Design navigation drawer.
Navigation drawers provide ergonomic access to destinations in an app.
Modal navigation drawers block interaction with the rest of an app’s content with a scrim. They are elevated above most of the app’s UI and don’t affect the screen’s layout grid.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this drawer
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}107
state of the drawer
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}108
whether or not the drawer can be interacted by gestures
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}763
color of the scrim that obscures content when the drawer is open
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
content of the rest of the UI
MultiChoiceSegmentedButtonRow
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}33
Material Segmented Button.
A Layout to correctly position, size, and add semantics to
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}765s in a Row. It handles overlapping items so that strokes of the item are correctly on top of each other.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}67 is used when the selection allows multiple value, for correct semantics.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}34
NavigationBar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}35
Material Design bottom navigation bar.
Navigation bars offer a persistent and convenient way to switch between primary destinations in an app.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this navigation bar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}773
the color used for the background of this navigation bar. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}775
the preferred color for content inside this navigation bar. Defaults to either the matching content color for
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}776, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}776 is not a color from the theme.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}779
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}776 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}783
a window insets of the navigation bar.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
19
the content of this navigation bar, typically 3-5
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}52s
NavigationDrawerItem
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}37
Material Design navigation drawer item.
A
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}59 represents a destination within drawers, either
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}53,
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}55 or
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}57.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}32
NavigationRail
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}39
Material Design bottom navigation rail.
Navigation rails provide access to primary destinations in apps when using tablet and desktop screens.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this item is clicked
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}331
icon for this item, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this item
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this item. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}805
optional text label for this item
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}806
whether to always show the label for this item. If false, the label will only be shown when this item is selected.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}807
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}808 that will be used to resolve the colors used for this item in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}809.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this item. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this item in different states.
OutlinedButton
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}42
Material Design outlined button.
Buttons help people initiate actions, from sending an email, to sharing a document, to liking a post.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}829
defines the shape of this button's container, border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}830 is not null], and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}831].
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}832
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}33 that will be used to resolve the colors for this button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}834.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}835
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}36 used to resolve the elevation for this button in different states. This controls the size of the shadow below the button. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}838
the border to draw around the container of this button. Pass
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 for no border.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}41
the spacing values to apply internally between the container and the content
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this button in different states.
OutlinedCard
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}44
Material Design outlined card.
Outlined cards contain content and actions that relate information about a subject. They have a visual boundary around the container. This can provide greater emphasis than the other types.
This OutlinedCard does not handle input events - see the other OutlinedCard overloads if you want a clickable or selectable OutlinedCard.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this card
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}848
defines the shape of this card's container, border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}849 is not null], and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}850]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}851
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}53 that will be used to resolve the color[s] used for this card in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}853.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}854
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}56 used to resolve the elevation for this card in different states. This controls the size of the shadow below the card. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}858
the border to draw around the container of this card
OutlinedCard
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}46
Material Design outlined card.
Outlined cards contain content and actions that relate information about a subject. They have a visual boundary around the container. This can provide greater emphasis than the other types.
This OutlinedCard handles click events, calling its
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}859 lambda.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this card is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this card
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this card. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}848
defines the shape of this card's container, border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}866 is not null], and shadow [when using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}867]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}851
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}53 that will be used to resolve the color[s] used for this card in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}853.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}854
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}56 used to resolve the elevation for this card in different states. This controls the size of the shadow below the card. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}875
the border to draw around the container of this card
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this card. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this card in different states.
OutlinedIconButton
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}48
Material Design outlined icon button.
Icon buttons help people take supplementary actions with a single tap. They’re used when a compact button is required, such as in a toolbar or image list.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this icon button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this icon button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}889
defines the shape of this icon button's container and border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}890 is not null]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}891
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}367 that will be used to resolve the colors used for this icon button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}893.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}894
the border to draw around the container of this icon button. Pass
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 for no border. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}896.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this icon button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this icon button in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this icon button, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
OutlinedIconToggleButton
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}50
Material Design outlined icon toggle button.
Icon buttons help people take supplementary actions with a single tap. They’re used when a compact button is required, such as in a toolbar or image list.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this icon button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this icon button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}889
defines the shape of this icon button's container and border [when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}914 is not null]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}915
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}387 that will be used to resolve the colors used for this icon button in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}917.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}918
the border to draw around the container of this icon button. Pass
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 for no border. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}920.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this icon button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this icon button in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this icon button, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
OutlinedTextField
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}52
Material Design outlined text field.
Text fields allow users to enter text into a UI. They typically appear in forms and dialogs. Outlined text fields have less visual emphasis than filled text fields. When they appear in places like forms, where many text fields are placed together, their reduced emphasis helps simplify the layout.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this text field
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this text field. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}935
controls the editable state of the text field. When
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}936, the text field cannot be modified. However, a user can focus it and copy text from it. Read-only text fields are usually used to display pre-filled forms that a user cannot edit.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}937
the style to be applied to the input text. Defaults to
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
69.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}805
the optional label to be displayed inside the text field container. The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 is
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}941 when the text field is in focus and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}942 when the text field is not in focus
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}123
the optional placeholder to be displayed when the text field is in focus and the input text is empty. The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 is
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}942
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
the optional leading icon to be displayed at the beginning of the text field container
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
the optional trailing icon to be displayed at the end of the text field container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}948
the optional prefix to be displayed before the input text in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}949
the optional suffix to be displayed after the input text in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}950
the optional supporting text to be displayed below the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}951
indicates if the text field's current value is in error. If set to true, the label, bottom indicator and trailing icon by default will be displayed in error color
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}952
transforms the visual representation of the input
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}953 For example, you can use
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}954 to create a password text field. By default, no visual transformation is applied.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}955
software keyboard options that contains configuration such as
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}956 and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}957
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}958
when the input service emits an IME action, the corresponding callback is called. Note that this IME action may be different from what you specified in
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}959
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}960
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}936, this text field becomes a single horizontally scrolling text field instead of wrapping onto multiple lines. The keyboard will be informed to not show the return key as the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}957. Note that
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}963 parameter will be ignored as the maxLines attribute will be automatically set to 1.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}964
the maximum height in terms of maximum number of visible lines. It is required that 1 Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this text field in different states.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}977
defines the shape of this text field's border
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}978
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}979 that will be used to resolve the colors used for this text field in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}980.
OutlinedTextField
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}54
Material Design outlined text field.
Text fields allow users to enter text into a UI. They typically appear in forms and dialogs. Outlined text fields have less visual emphasis than filled text fields. When they appear in places like forms, where many text fields are placed together, their reduced emphasis helps simplify the layout.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this text field
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this text field. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}935
controls the editable state of the text field. When
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}936, the text field cannot be modified. However, a user can focus it and copy text from it. Read-only text fields are usually used to display pre-filled forms that a user cannot edit.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}937
the style to be applied to the input text. Defaults to
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
69.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}805
the optional label to be displayed inside the text field container. The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 is
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}941 when the text field is in focus and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}942 when the text field is not in focus
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}123
the optional placeholder to be displayed when the text field is in focus and the input text is empty. The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 is
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}942
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
the optional leading icon to be displayed at the beginning of the text field container
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
the optional trailing icon to be displayed at the end of the text field container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}948
the optional prefix to be displayed before the input text in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}949
the optional suffix to be displayed after the input text in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}950
the optional supporting text to be displayed below the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}951
indicates if the text field's current value is in error state. If set to true, the label, bottom indicator and trailing icon by default will be displayed in error color
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}952
transforms the visual representation of the input
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
009 For example, you can use
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}954 to create a password text field. By default, no visual transformation is applied.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}955
software keyboard options that contains configuration such as
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}956 and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}957
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}958
when the input service emits an IME action, the corresponding callback is called. Note that this IME action may be different from what you specified in
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}959
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}960
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}936, this text field becomes a single horizontally scrolling text field instead of wrapping onto multiple lines. The keyboard will be informed to not show the return key as the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}957. Note that
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
019 parameter will be ignored as the maxLines attribute will be automatically set to 1.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}964
the maximum height in terms of maximum number of visible lines. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
021 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
019. This parameter is ignored when
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
023 is true.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}968
the minimum height in terms of minimum number of visible lines. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
021 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
019. This parameter is ignored when
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
023 is true.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this text field. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this text field in different states.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}977
defines the shape of this text field's border
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}978
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}979 that will be used to resolve the colors used for this text field in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}980.
PermanentDrawerSheet
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}56
Content inside of a permanent navigation drawer.
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this drawer's content
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}091
defines the shape of this drawer's container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}092
the color used for the background of this drawer. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}094
the preferred color for content inside this drawer. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
043, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
043 is not a color from the theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
046
when
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
043 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}102
a window insets for the sheet.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}042
content inside a permanent navigation drawer
PermanentNavigationDrawer
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}57
Material Design navigation permanent drawer.
Navigation drawers provide ergonomic access to destinations in an app. They’re often next to app content and affect the screen’s layout grid.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s, and displays an indicator underneath the currently selected tab. A scrollable tab row places its tabs offset from the starting edge, and allows scrolling to tabs that are placed off screen. For a fixed tab row that does not allow scrolling, and evenly places its tabs, see
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
054.
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
055
the index of the currently selected tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this tab row
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}162
the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}155 of this tab row
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
060
the color used for the background of this tab row. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
062
the preferred color for content inside this tab row. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
063, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
063 is not a color from the theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
066
the padding between the starting and ending edge of the scrollable tab row, and the tabs inside the row. This padding helps inform the user that this tab row can be scrolled, unlike a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}75.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
068
the indicator that represents which tab is currently selected. By default this will be a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
069, using a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 modifier to animate its position.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
071
the divider displayed at the bottom of the tab row. This provides a layer of separation between the tab row and the content displayed underneath.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
072
the tabs inside this tab row. Typically this will be multiple
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s. Each element inside this lambda will be measured and placed evenly across the row, each taking up equal space.
PrimaryTabRow
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}60
Material Design Fixed Primary tabs
Primary tabs are placed at the top of the content pane under a top app bar. They display the main content destinations. Fixed tabs display all tabs in a set simultaneously. They are best for switching between related content quickly, such as between transportation methods in a map. To navigate between fixed tabs, tap an individual tab, or swipe left or right in the content area.
A TabRow contains a row of
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s, and displays an indicator underneath the currently selected tab. A TabRow places its tabs evenly spaced along the entire row, with each tab taking up an equal amount of space. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
075 for a tab row that does not enforce equal size, and allows scrolling to tabs that do not fit on screen.
A simple example with text tabs looks like:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}61
You can also provide your own custom tab, such as:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}62
Where the custom tab itself could look like:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}63
As well as customizing the tab, you can also provide a custom
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
076, to customize the indicator displayed for a tab.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
076 will be placed to fill the entire TabRow, so it should internally take care of sizing and positioning the indicator to match changes to
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
078.
For example, given an indicator that draws a rounded rectangle near the edges of the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}64
We can reuse
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 and just provide this indicator, as we aren't changing how the size and position of the indicator changes between tabs:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}65
You may also want to use a custom transition, to allow you to dynamically change the appearance of the indicator as it animates between tabs, such as changing its color or size.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
076 is stacked on top of the entire TabRow, so you just need to provide a custom transition that animates the offset of the indicator from the start of the TabRow. For example, take the following example that uses a transition to animate the offset, width, and color of the same FancyIndicator from before, also adding a physics based 'spring' effect to the indicator in the direction of motion:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}66
We can now just pass this indicator directly to TabRow:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}67
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
055
the index of the currently selected tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this tab row
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
060
the color used for the background of this tab row. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
062
the preferred color for content inside this tab row. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
088, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
088 is not a color from the theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
091
the indicator that represents which tab is currently selected. By default this will be a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
069, using a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 modifier to animate its position.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
071
the divider displayed at the bottom of the tab row. This provides a layer of separation between the tab row and the content displayed underneath.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
072
the tabs inside this tab row. Typically this will be multiple
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s. Each element inside this lambda will be measured and placed evenly across the row, each taking up equal space.
RadioButton
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}68
Material Design radio button.
Radio buttons allow users to select one option from a set.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
099 or
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
- to achieve radio group-like behaviour, where the entire layout is selectable:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}70
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}471
whether this radio button is selected or not
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
102
called when this radio button is clicked. If
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79, then this radio button will not be interactable, unless something else handles its input events and updates its state.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this radio button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this radio button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
108
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
109 that will be used to resolve the color used for this radio button in different states. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
110.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this radio button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this radio button in different states.
RangeSlider
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}71
Material Design Range slider.
Range Sliders expand upon
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
116 using the same concepts but allow the user to select 2 values.
The two values are still bounded by the value range but they also cannot cross each other.
Use continuous Range Sliders to allow users to make meaningful selections that don’t require a specific values:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}72
You can allow the user to choose only between predefined set of values by specifying the amount of steps between min and max values:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}73
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
117
current values of the RangeSlider. If either value is outside of
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
118 provided, it will be coerced to this range.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
119
lambda in which values should be updated
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
modifiers for the Range Slider layout
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
whether or not component is enabled and can we interacted with or not
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
122
range of values that Range Slider values can take. Passed
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
123 will be coerced to this range
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
124
if greater than 0, specifies the amounts of discrete values, evenly distributed between across the whole value range. If 0, range slider will behave as a continuous slider and allow to choose any value from the range specified. Must not be negative.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
125
lambda to be invoked when value change has ended. This callback shouldn't be used to update the range slider values [use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
126 for that], but rather to know when the user has completed selecting a new value by ending a drag or a click.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
127
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
128 that will be used to determine the color of the Range Slider parts in different state. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
129 to customize.
RangeSlider
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}74
Material Design Range slider.
Range Sliders expand upon
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
116 using the same concepts but allow the user to select 2 values.
The two values are still bounded by the value range but they also cannot cross each other.
It uses the provided startThumb for the slider's start thumb and endThumb for the slider's end thumb. It also uses the provided track for the slider's track. If nothing is passed for these parameters, it will use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
131 and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
132 for the thumbs and track.
Use continuous Range Sliders to allow users to make meaningful selections that don’t require a specific values:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}72
You can allow the user to choose only between predefined set of values by specifying the amount of steps between min and max values:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}73
A custom start/end thumb and track can be provided:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}10
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
133
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
134 which contains the current values of the RangeSlider.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
modifiers for the Range Slider layout
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
whether or not component is enabled and can we interacted with or not
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
127
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
128 that will be used to determine the color of the Range Slider parts in different state. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
129 to customize.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
140
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for the start thumb. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
144
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for the end thumb. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
148
the start thumb to be displayed on the Range Slider. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
134 which is used to obtain the current active track.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
150
the end thumb to be displayed on the Range Slider. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
134 which is used to obtain the current active track.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
152
the track to be displayed on the range slider, it is placed underneath the thumb. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
134 which is used to obtain the current active track.
RangeSlider
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}78
Material Design Range slider.
Range Sliders expand upon
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
116 using the same concepts but allow the user to select 2 values.
The two values are still bounded by the value range but they also cannot cross each other.
It uses the provided startThumb for the slider's start thumb and endThumb for the slider's end thumb. It also uses the provided track for the slider's track. If nothing is passed for these parameters, it will use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
131 and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
132 for the thumbs and track.
Use continuous Range Sliders to allow users to make meaningful selections that don’t require a specific values:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}72
You can allow the user to choose only between predefined set of values by specifying the amount of steps between min and max values:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}73
A custom start/end thumb and track can be provided:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}10
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
117
current values of the RangeSlider. If either value is outside of
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
158 provided, it will be coerced to this range.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
119
lambda in which values should be updated
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
modifiers for the Range Slider layout
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
whether or not component is enabled and can we interacted with or not
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
122
range of values that Range Slider values can take. Passed
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
163 will be coerced to this range.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
125
lambda to be invoked when value change has ended. This callback shouldn't be used to update the range slider values [use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
165 for that], but rather to know when the user has completed selecting a new value by ending a drag or a click.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
127
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
128 that will be used to determine the color of the Range Slider parts in different state. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
129 to customize.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
140
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for the start thumb. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
144
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for the end thumb. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
148
the start thumb to be displayed on the Range Slider. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
134 which is used to obtain the current active track.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
150
the end thumb to be displayed on the Range Slider. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
134 which is used to obtain the current active track.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
152
the track to be displayed on the range slider, it is placed underneath the thumb. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
134 which is used to obtain the current active track.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
124
if greater than 0, specifies the amounts of discrete values, evenly distributed between across the whole value range. If 0, range slider will behave as a continuous slider and allow to choose any value from the range specified. Must not be negative.
RichTooltip
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}82
Rich text tooltip that allows the user to pass in a title, text, and action. Tooltips are used to provide a descriptive message.
Usually used with
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
09
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to the tooltip.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
44
An optional title for the tooltip.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
188
An optional action for the tooltip.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
189
the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
190 that should be applied to the tooltip container.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
191
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
192 that will be applied to the tooltip's container and content.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
193
the tonal elevation of the tooltip.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
194
the shadow elevation of the tooltip.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}168
the composable that will be used to populate the rich tooltip's text.
Scaffold
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}83
Material Design layout.
Scaffold implements the basic material design visual layout structure.
This component provides API to put together several material components to construct your screen, by ensuring proper layout strategy for them and collecting necessary data so these components will work together correctly.
Simple example of a Scaffold with
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}01,
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}39:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}84
To show a
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]08, use
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}04.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}85
ScrollableTabRow
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}86
Material Design tabs
Material Design scrollable tabs.
For primary indicator tabs, use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
075. For secondary indicator tabs, use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
201.
When a set of tabs cannot fit on screen, use scrollable tabs. Scrollable tabs can use longer text labels and a larger number of tabs. They are best used for browsing on touch interfaces.
A ScrollableTabRow contains a row of
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s, and displays an indicator underneath the currently selected tab. A ScrollableTabRow places its tabs offset from the starting edge, and allows scrolling to tabs that are placed off screen. For a fixed tab row that does not allow scrolling, and evenly places its tabs, see
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}75.
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
055
the index of the currently selected tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this tab row
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
060
the color used for the background of this tab row. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
062
the preferred color for content inside this tab row. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
210, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
210 is not a color from the theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
066
the padding between the starting and ending edge of the scrollable tab row, and the tabs inside the row. This padding helps inform the user that this tab row can be scrolled, unlike a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}75.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
215
the indicator that represents which tab is currently selected. By default this will be a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
216, using a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 modifier to animate its position. Note that this indicator will be forced to fill up the entire tab row, so you should use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 or similar to animate the actual drawn indicator inside this space, and provide an offset from the start.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
071
the divider displayed at the bottom of the tab row. This provides a layer of separation between the tab row and the content displayed underneath.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
072
the tabs inside this tab row. Typically this will be multiple
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s. Each element inside this lambda will be measured and placed evenly across the row, each taking up equal space.
SearchBar
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}87
Material Design search.
A search bar represents a floating search field that allows users to enter a keyword or phrase and get relevant information. It can be used as a way to navigate through an app via search queries.
An active search bar expands into a search "view" and can be used to display dynamic suggestions.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
224 that limit its size, and the host activity should set
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
225.
If this expansion behavior is undesirable, for example on large tablet screens,
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}110 can be used instead.
An example looks like:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}88
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}112
the query text to be shown in the search bar's input field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}113
the callback to be invoked when the input service updates the query. An updated text comes as a parameter of the callback.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}114
the callback to be invoked when the input service triggers the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}115 action. The current
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
231 comes as a parameter of the callback.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}117
whether this search bar is active
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}118
the callback to be invoked when this search bar's active state is changed
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this search bar
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this search bar. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}123
the placeholder to be displayed when the search bar's
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
231 is empty.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
the leading icon to be displayed at the beginning of the search bar container
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
the trailing icon to be displayed at the end of the search bar container
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
242
the shape of this search bar when it is not
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
243. When
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
243, the shape will always be
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
245.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}128
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}129 that will be used to resolve the colors used for this search bar in different states. See
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}130.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}131
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}132 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a translucent primary color overlay is applied on top of the container. A higher tonal elevation value will result in a darker color in light theme and lighter color in dark theme. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}135
the elevation for the shadow below the search bar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
254
the window insets that the search bar will respect
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this search bar. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this search bar in different states.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}042
the content of this search bar that will be displayed below the input field
SecondaryScrollableTabRow
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}89
Material Design Scrollable Secondary tabs
Material Design scrollable tabs.
Secondary tabs are used within a content area to further separate related content and establish hierarchy. When a set of tabs cannot fit on screen, use scrollable tabs. Scrollable tabs can use longer text labels and a larger number of tabs. They are best used for browsing on touch interfaces.
A scrollabel tab row contains a row of
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s, and displays an indicator underneath the currently selected tab. A scrollable tab row places its tabs offset from the starting edge, and allows scrolling to tabs that are placed off screen. For a fixed tab row that does not allow scrolling, and evenly places its tabs, see
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
262.
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
055
the index of the currently selected tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this tab row
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}162
the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}155 of this tab row
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
268
the color used for the background of this tab row. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
270
the preferred color for content inside this tab row. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
271, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
271 is not a color from the theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
066
the padding between the starting and ending edge of the scrollable tab row, and the tabs inside the row. This padding helps inform the user that this tab row can be scrolled, unlike a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}75.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
215
the indicator that represents which tab is currently selected. By default this will be a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
216, using a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 modifier to animate its position. Note that this indicator will be forced to fill up the entire tab row, so you should use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 or similar to animate the actual drawn indicator inside this space, and provide an offset from the start.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
071
the divider displayed at the bottom of the tab row. This provides a layer of separation between the tab row and the content displayed underneath.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
072
the tabs inside this tab row. Typically this will be multiple
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s. Each element inside this lambda will be measured and placed evenly across the row, each taking up equal space.
SecondaryTabRow
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}90
Material Design Fixed Secondary tabs
Secondary tabs are used within a content area to further separate related content and establish hierarchy. Fixed tabs display all tabs in a set simultaneously. To navigate between fixed tabs, tap an individual tab, or swipe left or right in the content area.
A TabRow contains a row of
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s, and displays an indicator underneath the currently selected tab. A Fixed TabRow places its tabs evenly spaced along the entire row, with each tab taking up an equal amount of space. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
201 for a tab row that does not enforce equal size, and allows scrolling to tabs that do not fit on screen.
A simple example with text tabs looks like:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}91
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
055
the index of the currently selected tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this tab row
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
268
the color used for the background of this tab row. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
270
the preferred color for content inside this tab row. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
291, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
291 is not a color from the theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
294
the indicator that represents which tab is currently selected. By default this will be a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
216, using a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 modifier to animate its position. Note that this indicator will be forced to fill up the entire tab row, so you should use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 or similar to animate the actual drawn indicator inside this space, and provide an offset from the start.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
071
the divider displayed at the bottom of the tab row. This provides a layer of separation between the tab row and the content displayed underneath.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
072
the tabs inside this tab row. Typically this will be multiple
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s. Each element inside this lambda will be measured and placed evenly across the row, each taking up equal space.
SingleChoiceSegmentedButtonRow
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}92
Material Segmented Button.
A Layout to correctly position and size
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}765s in a Row. It handles overlapping items so that strokes of the item are correctly on top of each other.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}66 is used when the selection only allows one value, for correct semantics.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}93
Slider
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}94
Material Design slider.
Sliders allow users to make selections from a range of values.
Sliders reflect a range of values along a bar, from which users may select a single value. They are ideal for adjusting settings such as volume, brightness, or applying image filters.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
303
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
304 which contains the slider's current value.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this slider
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this slider. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
127
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
128 that will be used to resolve the colors used for this slider in different states. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
129.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this slider. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this slider in different states.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
317
the thumb to be displayed on the slider, it is placed on top of the track. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
304 which is used to obtain the current active track.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
319
the track to be displayed on the slider, it is placed underneath the thumb. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
304 which is used to obtain the current active track.
Slider
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}99
Material Design slider.
Sliders allow users to make selections from a range of values.
It uses
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
131 and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
132 as the thumb and track.
Sliders reflect a range of values along a bar, from which users may select a single value. They are ideal for adjusting settings such as volume, brightness, or applying image filters.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
323
current value of the slider. If outside of
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
324 provided, value will be coerced to this range.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
325
callback in which value should be updated
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this slider
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this slider. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
122
range of values that this slider can take. The passed
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
331 will be coerced to this range.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
124
if greater than 0, specifies the amount of discrete allowable values, evenly distributed across the whole value range. If 0, the slider will behave continuously and allow any value from the range specified. Must not be negative.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
125
called when value change has ended. This should not be used to update the slider value [use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
334 instead], but rather to know when the user has completed selecting a new value by ending a drag or a click.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
127
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
128 that will be used to resolve the colors used for this slider in different states. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
129.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this slider. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this slider in different states.
Slider
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
02
Material Design slider.
Sliders allow users to make selections from a range of values.
Sliders reflect a range of values along a bar, from which users may select a single value. They are ideal for adjusting settings such as volume, brightness, or applying image filters.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
323
current value of the slider. If outside of
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
344 provided, value will be coerced to this range.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
325
callback in which value should be updated
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this slider
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this slider. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
125
called when value change has ended. This should not be used to update the slider value [use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
351 instead], but rather to know when the user has completed selecting a new value by ending a drag or a click.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
127
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
128 that will be used to resolve the colors used for this slider in different states. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
129.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this slider. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this slider in different states.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
124
if greater than 0, specifies the amount of discrete allowable values, evenly distributed across the whole value range. If 0, the slider will behave continuously and allow any value from the range specified. Must not be negative.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
317
the thumb to be displayed on the slider, it is placed on top of the track. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
304 which is used to obtain the current active track.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
319
the track to be displayed on the slider, it is placed underneath the thumb. The lambda receives a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
304 which is used to obtain the current active track.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
122
range of values that this slider can take. The passed
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
366 will be coerced to this range.
SmallFloatingActionButton
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
07
Material Design small floating action button.
The FAB represents the most important action on a screen. It puts key actions within reach.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
08
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this FAB is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this FAB
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
370
defines the shape of this FAB's container and shadow [when using
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
371]
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}312
the color used for the background of this FAB. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
90
the preferred color for content inside this FAB. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
375, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
375 is not a color from the theme.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}318
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}319 used to resolve the elevation for this FAB in different states. This controls the size of the shadow below the FAB. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. See also:
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this FAB. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this FAB in different states.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the content of this FAB, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
SmallTopAppBar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
09
Material Design small top app bar.
Top app bars display information and actions at the top of a screen.
This SmallTopAppBar has slots for a title, navigation icon, and actions.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
10
A top app bar that uses a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
389 to customize its nested scrolling behavior when working in conjunction with a scrolling content looks like:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
11
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
12
use
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}81 instead
Snackbar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
13
Material Design snackbar.
Snackbars provide brief messages about app processes at the bottom of the screen.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
391 provided by the
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}05, which is usually used inside of the
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]09.
This components provides only the visuals of the Snackbar. If you need to show a Snackbar with defaults on the screen, use
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}04:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}85
If you want to customize appearance of the Snackbar, you can pass your own version as a child of the
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}05 to the
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]09:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
15
When a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
397 sets the Snackbar's duration as
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
398, it's recommended to display an additional close affordance action. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
399:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
16
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
400
data about the current snackbar showing via
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
401
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this snackbar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
404
whether or not action should be put on a separate line. Recommended for action with long action text.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
405
defines the shape of this snackbar's container
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
406
the color used for the background of this snackbar. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
408
the preferred color for content inside this snackbar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
409
the color of the snackbar's action
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
410
the preferred content color for the optional action inside this snackbar. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
411.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
412
the preferred content color for the optional dismiss action inside this snackbar. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
399.
Snackbar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
17
Material Design snackbar.
Snackbars provide brief messages about app processes at the bottom of the screen.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
15
For a multiline sample following the Material recommended spec of a maximum of 2 lines, see:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
20
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this snackbar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
188
action / button component to add as an action to the snackbar. Consider using
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
420 as the color for the action, if you do not have a predefined color you wish to use instead.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
421
action / button component to add as an additional close affordance action when a snackbar is non self-dismissive. Consider using
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
422 as the color for the action, if you do not have a predefined color you wish to use instead.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
404
whether or not action should be put on a separate line. Recommended for action with long action text.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
405
defines the shape of this snackbar's container
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
406
the color used for the background of this snackbar. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
408
the preferred color for content inside this snackbar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
410
the preferred content color for the optional
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
429 inside this snackbar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
412
the preferred content color for the optional
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
431 inside this snackbar
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
content to show information about a process that an app has performed or will perform
SnackbarHost
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
21
Host for
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]08s to be used in
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]09 to properly show, hide and dismiss items based on Material specification and the
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]10.
This component with default parameters comes build-in with
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]09, if you need to show a default
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]08, use
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}04.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}85
If you want to customize appearance of the
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]08, you can pass your own version as a child of the
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}05 to the
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]09:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
15
SuggestionChip
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
24
Material Design suggestion chip.
Chips help people enter information, make selections, filter content, or trigger actions. Chips can show multiple interactive elements together in the same area, such as a list of selectable movie times, or a series of email contacts.
Suggestion chips help narrow a user's intent by presenting dynamically generated suggestions, such as possible responses or search filters.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
25
Surface
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
26
Material surface is the central metaphor in material design. Each surface exists at a given elevation, which influences how that piece of surface visually relates to other surfaces and how that surface is modified by tonal variance.
See the other overloads for clickable, selectable, and toggleable surfaces.
The Surface is responsible for:
- Clipping: Surface clips its children to the shape specified by
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 443 - Borders: If
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 443 has a border, then it will also be drawn. - Background: Surface fills the shape specified by
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 443 with the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 446. If @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 446 is @Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 55 a color overlay will be applied. The color of the overlay depends on the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 449 of this Surface, and the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 450 set by any parent surfaces. This ensures that a Surface never appears to have a lower elevation overlay than its ancestors, by summing the elevation of all previous Surfaces. - Content color: Surface uses
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 451 to specify a preferred color for the content of this surface - this is used by the import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
} 22 and import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {NavigationBarItem[ icon = { BadgedBox[ badge = { Badge { val badgeNumber = "8" Text[ badgeNumber, modifier = Modifier.semantics { contentDescription = "$badgeNumber new notifications" } ] } }] { Icon[ Icons.Filled.Star, contentDescription = "Favorite" ] } }, selected = false, onClick = {} ]
} 332 components as a default color.BasicAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false } ] { Surface[ modifier = Modifier .wrapContentWidth[] .wrapContentHeight[], shape = MaterialTheme.shapes.large, tonalElevation = AlertDialogDefaults.TonalElevation ] { Column[modifier = Modifier.padding[16.dp]] { Text[ text = "This area typically contains the supportive text " + "which presents the details regarding the Dialog's purpose.", ] Spacer[modifier = Modifier.height[24.dp]] TextButton[ onClick = { openDialog.value = false }, modifier = Modifier.align[Alignment.End] ] { Text["Confirm"] } } } }
If no
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
451 is set, this surface will try and match its background color to a color defined in the theme
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}09, and return the corresponding content color. For example, if the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
446 of this surface is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55,
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
451 will be set to
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
459. If
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
446 is not part of the theme palette,
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
451 will keep the same value set above this Surface.
To manually retrieve the content color inside a surface, use
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90.
- Blocking touch propagation behind the surface.
Surface sample:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
27
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
Modifier to be applied to the layout corresponding to the surface
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
464
Defines the surface's shape as well its shadow.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
465
The background color. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
467
The preferred content color provided by this Surface to its children. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
446, or if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
446 is not a color from the theme, this will keep the same value set above this Surface.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
470
When
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
446 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a higher the elevation will result in a darker color in light theme and lighter color in dark theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
473
The size of the shadow below the surface. To prevent shadow creep, only apply shadow elevation when absolutely necessary, such as when the surface requires visual separation from a patterned background. Note that It will not affect z index of the Surface. If you want to change the drawing order you can use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
474.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
Optional border to draw on top of the surface
Surface
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
28
Material surface is the central metaphor in material design. Each surface exists at a given elevation, which influences how that piece of surface visually relates to other surfaces and how that surface is modified by tonal variance.
This version of Surface is responsible for a click handling as well as everything else that a regular Surface does:
This clickable Surface is responsible for:
- Clipping: Surface clips its children to the shape specified by
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 476 - Borders: If
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 476 has a border, then it will also be drawn. - Background: Surface fills the shape specified by
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 476 with the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 479. If @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 479 is @Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 55 a color overlay may be applied. The color of the overlay depends on the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 482 of this Surface, and the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 450 set by any parent surfaces. This ensures that a Surface never appears to have a lower elevation overlay than its ancestors, by summing the elevation of all previous Surfaces. - Content color: Surface uses
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 484 to specify a preferred color for the content of this surface - this is used by the import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
} 22 and import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {NavigationBarItem[ icon = { BadgedBox[ badge = { Badge { val badgeNumber = "8" Text[ badgeNumber, modifier = Modifier.semantics { contentDescription = "$badgeNumber new notifications" } ] } }] { Icon[ Icons.Filled.Star, contentDescription = "Favorite" ] } }, selected = false, onClick = {} ]
} 332 components as a default color. If no @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summaryBasicAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false } ] { Surface[ modifier = Modifier .wrapContentWidth[] .wrapContentHeight[], shape = MaterialTheme.shapes.large, tonalElevation = AlertDialogDefaults.TonalElevation ] { Column[modifier = Modifier.padding[16.dp]] { Text[ text = "This area typically contains the supportive text " + "which presents the details regarding the Dialog's purpose.", ] Spacer[modifier = Modifier.height[24.dp]] TextButton[ onClick = { openDialog.value = false }, modifier = Modifier.align[Alignment.End] ] { Text["Confirm"] } } } }
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 484 is set, this surface will try and match its background color to a color defined in the theme import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
} 09, and return the corresponding content color. For example, if the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summaryAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 479 of this surface is @Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 55, @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 484 will be set to @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 459. If @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 479 is not part of the theme palette, @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 484 will keep the same value set above this Surface. - Click handling. This version of surface will react to the clicks, calling
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 495 lambda, updating the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 496 when @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 497 occurs, and showing ripple indication in response to press events. If you don't need click handling, consider using the Surface function that doesn't require @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 495 param. If you need to set a custom label for the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 495, apply a @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 500 to the Surface. - Semantics for clicks. Just like with
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 501, clickable version of Surface will produce semantics to indicate that it is clicked. No semantic role is set by default, you may specify one by passing a desired @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 502 with a import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
} 329.BasicAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false } ] { Surface[ modifier = Modifier .wrapContentWidth[] .wrapContentHeight[], shape = MaterialTheme.shapes.large, tonalElevation = AlertDialogDefaults.TonalElevation ] { Column[modifier = Modifier.padding[16.dp]] { Text[ text = "This area typically contains the supportive text " + "which presents the details regarding the Dialog's purpose.", ] Spacer[modifier = Modifier.height[24.dp]] TextButton[ onClick = { openDialog.value = false }, modifier = Modifier.align[Alignment.End] ] { Text["Confirm"] } } } }
To manually retrieve the content color inside a surface, use
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90.
Clickable surface sample:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
29
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
callback to be called when the surface is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
Modifier to be applied to the layout corresponding to the surface
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
Controls the enabled state of the surface. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this surface will not be clickable
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
464
Defines the surface's shape as well its shadow. A shadow is only displayed if the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
482 is greater than zero.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
465
The background color. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
467
The preferred content color provided by this Surface to its children. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
479, or if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
479 is not a color from the theme, this will keep the same value set above this Surface.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
470
When
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
479 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a higher the elevation will result in a darker color in light theme and lighter color in dark theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
473
The size of the shadow below the surface. Note that It will not affect z index of the Surface. If you want to change the drawing order you can use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
474.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
Optional border to draw on top of the surface
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this Surface. You can create and pass in your own remembered
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 if you want to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this Surface in different
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s.
Surface
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
30
Material surface is the central metaphor in material design. Each surface exists at a given elevation, which influences how that piece of surface visually relates to other surfaces and how that surface is modified by tonal variance.
This version of Surface is responsible for a toggling its checked state as well as everything else that a regular Surface does:
This toggleable Surface is responsible for:
- Clipping: Surface clips its children to the shape specified by
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 528 - Borders: If
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 528 has a border, then it will also be drawn. - Background: Surface fills the shape specified by
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 528 with the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 531. If @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 531 is @Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 55 a color overlay may be applied. The color of the overlay depends on the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 534 of this Surface, and the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 450 set by any parent surfaces. This ensures that a Surface never appears to have a lower elevation overlay than its ancestors, by summing the elevation of all previous Surfaces. - Content color: Surface uses
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 536 to specify a preferred color for the content of this surface - this is used by the import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
} 22 and import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {NavigationBarItem[ icon = { BadgedBox[ badge = { Badge { val badgeNumber = "8" Text[ badgeNumber, modifier = Modifier.semantics { contentDescription = "$badgeNumber new notifications" } ] } }] { Icon[ Icons.Filled.Star, contentDescription = "Favorite" ] } }, selected = false, onClick = {} ]
} 332 components as a default color. If no @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summaryBasicAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false } ] { Surface[ modifier = Modifier .wrapContentWidth[] .wrapContentHeight[], shape = MaterialTheme.shapes.large, tonalElevation = AlertDialogDefaults.TonalElevation ] { Column[modifier = Modifier.padding[16.dp]] { Text[ text = "This area typically contains the supportive text " + "which presents the details regarding the Dialog's purpose.", ] Spacer[modifier = Modifier.height[24.dp]] TextButton[ onClick = { openDialog.value = false }, modifier = Modifier.align[Alignment.End] ] { Text["Confirm"] } } } }
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 536 is set, this surface will try and match its background color to a color defined in the theme import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
} 09, and return the corresponding content color. For example, if the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summaryAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 531 of this surface is @Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 55, @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 536 will be set to @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 459. If @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 531 is not part of the theme palette, @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 536 will keep the same value set above this Surface. - Click handling. This version of surface will react to the check toggles, calling
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 547 lambda, updating the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 548 when @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 497 occurs, and showing ripple indication in response to press events. If you don't need check handling, consider using a Surface function that doesn't require @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 547 param. - Semantics for toggle. Just like with
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 551, toggleable version of Surface will produce semantics to indicate that it is checked. No semantic role is set by default, you may specify one by passing a desired @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 502 with a import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
} 329.BasicAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false } ] { Surface[ modifier = Modifier .wrapContentWidth[] .wrapContentHeight[], shape = MaterialTheme.shapes.large, tonalElevation = AlertDialogDefaults.TonalElevation ] { Column[modifier = Modifier.padding[16.dp]] { Text[ text = "This area typically contains the supportive text " + "which presents the details regarding the Dialog's purpose.", ] Spacer[modifier = Modifier.height[24.dp]] TextButton[ onClick = { openDialog.value = false }, modifier = Modifier.align[Alignment.End] ] { Text["Confirm"] } } } }
To manually retrieve the content color inside a surface, use
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90.
Toggleable surface sample:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
31
Parameters
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}83
whether or not this Surface is toggled on or off
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}380
callback to be invoked when the toggleable Surface is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
Modifier to be applied to the layout corresponding to the surface
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
Controls the enabled state of the surface. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this surface will not be clickable
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
464
Defines the surface's shape as well its shadow. A shadow is only displayed if the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
534 is greater than zero.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
465
The background color. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
467
The preferred content color provided by this Surface to its children. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
531, or if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
531 is not a color from the theme, this will keep the same value set above this Surface.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
470
When
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
531 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a higher the elevation will result in a darker color in light theme and lighter color in dark theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
473
The size of the shadow below the surface. Note that It will not affect z index of the Surface. If you want to change the drawing order you can use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
474.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
Optional border to draw on top of the surface
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this Surface. You can create and pass in your own remembered
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 if you want to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this Surface in different
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s.
Surface
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
32
Material surface is the central metaphor in material design. Each surface exists at a given elevation, which influences how that piece of surface visually relates to other surfaces and how that surface is modified by tonal variance.
This version of Surface is responsible for a selection handling as well as everything else that a regular Surface does:
This selectable Surface is responsible for:
- Clipping: Surface clips its children to the shape specified by
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 579 - Borders: If
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 579 has a border, then it will also be drawn. - Background: Surface fills the shape specified by
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 579 with the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 582. If @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 582 is @Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 55 a color overlay may be applied. The color of the overlay depends on the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 585 of this Surface, and the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 450 set by any parent surfaces. This ensures that a Surface never appears to have a lower elevation overlay than its ancestors, by summing the elevation of all previous Surfaces. - Content color: Surface uses
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 587 to specify a preferred color for the content of this surface - this is used by the import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
} 22 and import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {NavigationBarItem[ icon = { BadgedBox[ badge = { Badge { val badgeNumber = "8" Text[ badgeNumber, modifier = Modifier.semantics { contentDescription = "$badgeNumber new notifications" } ] } }] { Icon[ Icons.Filled.Star, contentDescription = "Favorite" ] } }, selected = false, onClick = {} ]
} 332 components as a default color. If no @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summaryBasicAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false } ] { Surface[ modifier = Modifier .wrapContentWidth[] .wrapContentHeight[], shape = MaterialTheme.shapes.large, tonalElevation = AlertDialogDefaults.TonalElevation ] { Column[modifier = Modifier.padding[16.dp]] { Text[ text = "This area typically contains the supportive text " + "which presents the details regarding the Dialog's purpose.", ] Spacer[modifier = Modifier.height[24.dp]] TextButton[ onClick = { openDialog.value = false }, modifier = Modifier.align[Alignment.End] ] { Text["Confirm"] } } } }
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 587 is set, this surface will try and match its background color to a color defined in the theme import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
} 09, and return the corresponding content color. For example, if the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summaryAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 582 of this surface is @Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 55, @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 587 will be set to @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 459. If @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 582 is not part of the theme palette, @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 587 will keep the same value set above this Surface. - Click handling. This version of surface will react to the clicks, calling
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 598 lambda, updating the @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 599 when @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 497 occurs, and showing ripple indication in response to press events. If you don't need click handling, consider using the Surface function that doesn't require @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 598 param. - Semantics for selection. Just like with
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 602, selectable version of Surface will produce semantics to indicate that it is selected. No semantic role is set by default, you may specify one by passing a desired @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 502 with a import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
} 329.BasicAlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false } ] { Surface[ modifier = Modifier .wrapContentWidth[] .wrapContentHeight[], shape = MaterialTheme.shapes.large, tonalElevation = AlertDialogDefaults.TonalElevation ] { Column[modifier = Modifier.padding[16.dp]] { Text[ text = "This area typically contains the supportive text " + "which presents the details regarding the Dialog's purpose.", ] Spacer[modifier = Modifier.height[24.dp]] TextButton[ onClick = { openDialog.value = false }, modifier = Modifier.align[Alignment.End] ] { Text["Confirm"] } } } }
To manually retrieve the content color inside a surface, use
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90.
Selectable surface sample:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
33
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}471
whether or not this Surface is selected
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
callback to be called when the surface is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
Modifier to be applied to the layout corresponding to the surface
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
Controls the enabled state of the surface. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this surface will not be clickable
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
464
Defines the surface's shape as well its shadow. A shadow is only displayed if the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
585 is greater than zero.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
465
The background color. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
467
The preferred content color provided by this Surface to its children. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
582, or if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
582 is not a color from the theme, this will keep the same value set above this Surface.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
470
When
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
582 is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, a higher the elevation will result in a darker color in light theme and lighter color in dark theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
473
The size of the shadow below the surface. Note that It will not affect z index of the Surface. If you want to change the drawing order you can use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
474.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
Optional border to draw on top of the surface
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this Surface. You can create and pass in your own remembered
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 if you want to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this Surface in different
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s.
SwipeToDismiss
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
34
A composable that can be dismissed by swiping left or right.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
35
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
630
The state of this component.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
631
A composable that is stacked behind the content and is exposed when the content is swiped. You can/should use the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
632 to have different backgrounds on each side.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
633
The content that can be dismissed.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
Optional
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 for this component.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
636
The set of directions in which the component can be dismissed.
SwipeToDismissBox
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
36
A composable that can be dismissed by swiping left or right.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
35
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
630
The state of this component.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
638
A composable that is stacked behind the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
639 and is exposed when the content is swiped. You can/should use the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
640 to have different backgrounds on each side.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
Optional
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 for this component.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
643
Whether SwipeToDismissBox can be dismissed from start to end.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
644
Whether SwipeToDismissBox can be dismissed from end to start.
@Composable fun [BadgedBox][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
BadgedBox%28kotlin.Function1,androidx.compose.ui.Modifier,kotlin.Function1%29][
badge: @Composable BoxScope.[] -> Unit, modifier: Modifier = Modifier, content: @Composable BoxScope.[] -> Unit ]: Unit
19
The content that can be dismissed.
Switch
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
38
Material Design Switch.
Switches toggle the state of a single item on or off.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
39
Switch can be used with a custom icon via
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
646 parameter
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
40
Parameters
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}83
whether or not this switch is checked
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}84
called when this switch is clicked. If
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79, then this switch will not be interactable, unless something else handles its input events and updates its state.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this switch
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
652
content that will be drawn inside the thumb, expected to measure
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
653
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this switch. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
656
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
657 that will be used to resolve the colors used for this switch in different states. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
658.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this switch. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this switch in different states.
Tab
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
41
Material Design tab.
Tabs organize content across different screens, data sets, and other interactions.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053 overload that is not opinionated about content / color. See the other overload for a Tab that has specific slots for text and / or an icon, as well as providing the correct colors for selected / unselected states.
A custom tab using this API may look like:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}63
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}471
whether this tab is selected or not
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this tab is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this tab. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}680
the color for the content of this tab when selected, and the color of the ripple.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}681
the color for the content of this tab when not selected
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this tab. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this tab in different states.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}042
the content of this tab
Tab
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
43
Material Design tab.
A default Tab, also known as a Primary Navigation Tab. Tabs organize content across different screens, data sets, and other interactions.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
679.
This should typically be used inside of a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}75, see the corresponding documentation for example usage.
This Tab has slots for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
681 and/or
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
682 - see the other Tab overload for a generic Tab that is not opinionated about its content.
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}471
whether this tab is selected or not
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this tab is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this tab. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
46
the text label displayed in this tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
41
the icon displayed in this tab
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}680
the color for the content of this tab when selected, and the color of the ripple.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}681
the color for the content of this tab when not selected
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this tab. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this tab in different states.
TabRow
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
44
Material Design tabs
Material Design fixed tabs.
For primary indicator tabs, use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
054. For secondary indicator tabs, use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
262.
Fixed tabs display all tabs in a set simultaneously. They are best for switching between related content quickly, such as between transportation methods in a map. To navigate between fixed tabs, tap an individual tab, or swipe left or right in the content area.
A TabRow contains a row of
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s, and displays an indicator underneath the currently selected tab. A TabRow places its tabs evenly spaced along the entire row, with each tab taking up an equal amount of space. See
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}76 for a tab row that does not enforce equal size, and allows scrolling to tabs that do not fit on screen.
A simple example with text tabs looks like:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
45
You can also provide your own custom tab, such as:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}62
Where the custom tab itself could look like:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}63
As well as customizing the tab, you can also provide a custom
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
702, to customize the indicator displayed for a tab.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
702 will be placed to fill the entire TabRow, so it should internally take care of sizing and positioning the indicator to match changes to
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
704.
For example, given an indicator that draws a rounded rectangle near the edges of the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}64
We can reuse
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 and just provide this indicator, as we aren't changing how the size and position of the indicator changes between tabs:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}65
You may also want to use a custom transition, to allow you to dynamically change the appearance of the indicator as it animates between tabs, such as changing its color or size.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
702 is stacked on top of the entire TabRow, so you just need to provide a custom transition that animates the offset of the indicator from the start of the TabRow. For example, take the following example that uses a transition to animate the offset, width, and color of the same FancyIndicator from before, also adding a physics based 'spring' effect to the indicator in the direction of motion:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}66
We can now just pass this indicator directly to TabRow:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}67
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
055
the index of the currently selected tab
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this tab row
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
060
the color used for the background of this tab row. Use
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
49 to have no color.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
062
the preferred color for content inside this tab row. Defaults to either the matching content color for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
714, or to the current
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
714 is not a color from the theme.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
717
the indicator that represents which tab is currently selected. By default this will be a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
216, using a
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 modifier to animate its position. Note that this indicator will be forced to fill up the entire tab row, so you should use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
070 or similar to animate the actual drawn indicator inside this space, and provide an offset from the start.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
071
the divider displayed at the bottom of the tab row. This provides a layer of separation between the tab row and the content displayed underneath.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
072
the tabs inside this tab row. Typically this will be multiple
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
053s. Each element inside this lambda will be measured and placed evenly across the row, each taking up equal space.
Text
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
52
High level element that displays text and provides semantics / accessibility information.
The default
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
724 uses the
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
69 provided by the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
726 / components. If you are setting your own style, you may want to consider first retrieving
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
69, and using
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
728 to keep any theme defined attributes, only modifying the specific attributes you want to override.
For ease of use, commonly used parameters from
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
729 are also present here. The order of precedence is as follows:
- If a parameter is explicitly set here [i.e, it is not
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 79 or @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 731], then this parameter will always be used. - If a parameter is not set, [
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 79 or @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 731], then the corresponding value from @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 724 will be used instead.
Additionally, for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
735, if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
735 is not set, and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
724 does not have a color, then
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 will be used.
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
739
the text to be displayed
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this layout node
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
742
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]58 to apply to the text. If
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}532, and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
724 has no color set, this will be
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
747
the size of glyphs to use when painting the text. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
748.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
749
the typeface variant to use when drawing the letters [e.g., italic]. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
750.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
751
the typeface thickness to use when painting the text [e.g.,
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
752].
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
753
the font family to be used when rendering the text. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
754.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
755
the amount of space to add between each letter. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
756.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
757
the decorations to paint on the text [e.g., an underline]. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
758.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
759
the alignment of the text within the lines of the paragraph. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
760.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
761
line height for the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
762 in
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
763 unit, e.g. SP or EM. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
764.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
765
how visual overflow should be handled.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
766
whether the text should break at soft line breaks. If false, the glyphs in the text will be positioned as if there was unlimited horizontal space. If
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
767 is false,
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
768 and TextAlign may have unexpected effects.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
769
An optional maximum number of lines for the text to span, wrapping if necessary. If the text exceeds the given number of lines, it will be truncated according to
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
768 and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
767. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
772 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
773.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}968
The minimum height in terms of minimum number of visible lines. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
772 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
773.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
777
callback that is executed when a new text layout is calculated. A
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
778 object that callback provides contains paragraph information, size of the text, baselines and other details. The callback can be used to add additional decoration or functionality to the text. For example, to draw selection around the text.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
779
style configuration for the text such as color, font, line height etc.
Text
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
53
High level element that displays text and provides semantics / accessibility information.
The default
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
780 uses the
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
69 provided by the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
726 / components. If you are setting your own style, you may want to consider first retrieving
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
69, and using
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
728 to keep any theme defined attributes, only modifying the specific attributes you want to override.
For ease of use, commonly used parameters from
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
729 are also present here. The order of precedence is as follows:
- If a parameter is explicitly set here [i.e, it is not
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 79 or @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 731], then this parameter will always be used. - If a parameter is not set, [
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit 79 or @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 731], then the corresponding value from @Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit 780 will be used instead.
Additionally, for
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
791, if
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
791 is not set, and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
780 does not have a color, then
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90 will be used.
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
795
the text to be displayed
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this layout node
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
742
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]58 to apply to the text. If
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}532, and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
780 has no color set, this will be
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}90.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
747
the size of glyphs to use when painting the text. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
748.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
749
the typeface variant to use when drawing the letters [e.g., italic]. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
750.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
751
the typeface thickness to use when painting the text [e.g.,
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
752].
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
753
the font family to be used when rendering the text. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
754.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
755
the amount of space to add between each letter. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
756.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
757
the decorations to paint on the text [e.g., an underline]. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
758.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
759
the alignment of the text within the lines of the paragraph. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
760.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
761
line height for the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
762 in
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
763 unit, e.g. SP or EM. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
764.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
765
how visual overflow should be handled.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
766
whether the text should break at soft line breaks. If false, the glyphs in the text will be positioned as if there was unlimited horizontal space. If
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
823 is false,
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
824 and TextAlign may have unexpected effects.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
769
An optional maximum number of lines for the text to span, wrapping if necessary. If the text exceeds the given number of lines, it will be truncated according to
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
824 and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
823. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
828 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
829.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}968
The minimum height in terms of minimum number of visible lines. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
828 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
829.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
833
a map storing composables that replaces certain ranges of the text, used to insert composables into text layout. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
834.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
835
callback that is executed when a new text layout is calculated. A
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
778 object that callback provides contains paragraph information, size of the text, baselines and other details. The callback can be used to add additional decoration or functionality to the text. For example, to draw selection around the text.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
779
style configuration for the text such as color, font, line height etc.
TextButton
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
54
Material Design text button.
Buttons help people initiate actions, from sending an email, to sharing a document, to liking a post.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
55
Choose the best button for an action based on the amount of emphasis it needs. The more important an action is, the higher emphasis its button should be.
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 18 for a high-emphasis button without a shadow, also known as a filled button.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 19 for a import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
} 20 with a shadow.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 20 for a middle ground between import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
} 21 and import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
} 18.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
- See
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
val openDialog = remember { mutableStateOf[true] }
if [openDialog.value] {
} 21 for a medium-emphasis button with a border.AlertDialog[ onDismissRequest = { // Dismiss the dialog when the user clicks outside the dialog or on the back // button. If you want to disable that functionality, simply use an empty // onDismissRequest. openDialog.value = false }, title = { Text[text = "Title"] }, text = { Text[text = "Turned on by default"] }, confirmButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Confirm"] } }, dismissButton = { TextButton[ onClick = { openDialog.value = false } ] { Text["Dismiss"] } } ]
The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 components will be set to
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}23.
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this button is clicked
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
852
defines the shape of this button's container, border [when
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
853 is not null], and shadow [when using
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
854]
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
855
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}33 that will be used to resolve the colors for this button in different states. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
857.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}835
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}36 used to resolve the elevation for this button in different states. This controls the size of the shadow below the button. Additionally, when the container color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this controls the amount of primary color applied as an overlay. A TextButton typically has no elevation, and the default value is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79. See
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}19 for a button with elevation.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}40
the border to draw around the container of this button
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
864
the spacing values to apply internally between the container and the content
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this button in different states.
TextField
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
56
Material Design filled text field.
Text fields allow users to enter text into a UI. They typically appear in forms and dialogs. Filled text fields have more visual emphasis than outlined text fields, making them stand out when surrounded by other content and components.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
57
You may provide a placeholder:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
58
You can also provide leading and trailing icons:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
59
You can also provide a prefix or suffix to the text:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
60
To handle the error input state, use
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
871 parameter:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
61
Additionally, you may provide additional message at the bottom:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
62
Password text field example:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
63
Hiding a software keyboard on IME action performed:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
64
If apart from input text change you also want to observe the cursor location, selection range, or IME composition use the TextField overload with the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}928 parameter instead.
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}929
the input text to be shown in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}930
the callback that is triggered when the input service updates the text. An updated text comes as a parameter of the callback
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this text field
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this text field. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}935
controls the editable state of the text field. When
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}936, the text field cannot be modified. However, a user can focus it and copy text from it. Read-only text fields are usually used to display pre-filled forms that a user cannot edit.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}937
the style to be applied to the input text. Defaults to
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
69.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}805
the optional label to be displayed inside the text field container. The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 is
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}941 when the text field is in focus and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}942 when the text field is not in focus
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}123
the optional placeholder to be displayed when the text field is in focus and the input text is empty. The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 is
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}942
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
the optional leading icon to be displayed at the beginning of the text field container
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
the optional trailing icon to be displayed at the end of the text field container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}948
the optional prefix to be displayed before the input text in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}949
the optional suffix to be displayed after the input text in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}950
the optional supporting text to be displayed below the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}951
indicates if the text field's current value is in error. If set to true, the label, bottom indicator and trailing icon by default will be displayed in error color
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}952
transforms the visual representation of the input
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
897 For example, you can use
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}954 to create a password text field. By default, no visual transformation is applied.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}955
software keyboard options that contains configuration such as
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}956 and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}957.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}958
when the input service emits an IME action, the corresponding callback is called. Note that this IME action may be different from what you specified in
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}959.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}960
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}936, this text field becomes a single horizontally scrolling text field instead of wrapping onto multiple lines. The keyboard will be informed to not show the return key as the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}957. Note that
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
907 parameter will be ignored as the maxLines attribute will be automatically set to 1.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}964
the maximum height in terms of maximum number of visible lines. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
909 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
907. This parameter is ignored when
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
911 is true.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}968
the minimum height in terms of minimum number of visible lines. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
909 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
907. This parameter is ignored when
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
911 is true.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this text field. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this text field in different states.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
921
defines the shape of this text field's container
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
922
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}979 that will be used to resolve the colors used for this text field in different states. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
924.
TextField
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
65
Material Design filled text field.
Text fields allow users to enter text into a UI. They typically appear in forms and dialogs. Filled text fields have more visual emphasis than outlined text fields, making them stand out when surrounded by other content and components.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
66
This overload provides access to the input text, cursor position, selection range and IME composition. If you only want to observe an input text change, use the TextField overload with the
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]66 parameter instead.
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}982
the input
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}928 to be shown in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}984
the callback that is triggered when the input service updates values in
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}928. An updated
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}928 comes as a parameter of the callback
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this text field
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this text field. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}935
controls the editable state of the text field. When
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}936, the text field cannot be modified. However, a user can focus it and copy text from it. Read-only text fields are usually used to display pre-filled forms that a user cannot edit.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}937
the style to be applied to the input text. Defaults to
@Composable fun [AssistChip][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AssistChip%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Boolean,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.material3.ChipColors,androidx.compose.material3.ChipElevation,androidx.compose.foundation.BorderStroke,androidx.compose.foundation.interaction.MutableInteractionSource%29][
onClick: [] -> Unit, label: @Composable [] -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, leadingIcon: [@Composable [] -> Unit]? = null, trailingIcon: [@Composable [] -> Unit]? = null, shape: Shape = AssistChipDefaults.shape, colors: ChipColors = AssistChipDefaults.assistChipColors[], elevation: ChipElevation? = AssistChipDefaults.assistChipElevation[], border: BorderStroke? = AssistChipDefaults.assistChipBorder[enabled], interactionSource: MutableInteractionSource = remember { MutableInteractionSource[] } ]: Unit
69.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}805
the optional label to be displayed inside the text field container. The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 is
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}941 when the text field is in focus and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}942 when the text field is not in focus
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}123
the optional placeholder to be displayed when the text field is in focus and the input text is empty. The default text style for internal
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}22 is
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}942
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
65
the optional leading icon to be displayed at the beginning of the text field container
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
67
the optional trailing icon to be displayed at the end of the text field container
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}948
the optional prefix to be displayed before the input text in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}949
the optional suffix to be displayed after the input text in the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}950
the optional supporting text to be displayed below the text field
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}951
indicates if the text field's current value is in error state. If set to true, the label, bottom indicator and trailing icon by default will be displayed in error color
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}952
transforms the visual representation of the input
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
954. For example, you can use
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}954 to create a password text field. By default, no visual transformation is applied.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}955
software keyboard options that contains configuration such as
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}956 and
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}957.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}958
when the input service emits an IME action, the corresponding callback is called. Note that this IME action may be different from what you specified in
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}959.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}960
when
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}936, this text field becomes a single horizontally scrolling text field instead of wrapping onto multiple lines. The keyboard will be informed to not show the return key as the
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}957. Note that
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
964 parameter will be ignored as the maxLines attribute will be automatically set to 1.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}964
the maximum height in terms of maximum number of visible lines. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
966 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
964. This parameter is ignored when
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
968 is true.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}968
the minimum height in terms of minimum number of visible lines. It is required that 1 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
966 Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
964. This parameter is ignored when
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
968 is true.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this text field. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this text field in different states.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
921
defines the shape of this text field's container
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
922
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}979 that will be used to resolve the colors used for this text field in different states. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
924.
TimeInput
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
67
Time pickers help users select and set a specific time.
Shows a time input that allows the user to enter the time via two text fields, one for minutes and one for hours Subscribe to updates through
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
03
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
68
TimePicker
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
69
Material Design time picker.
Time pickers help users select and set a specific time.
Shows a picker that allows the user to select time. Subscribe to updates through
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
03
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
70
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
71
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
984 state for this timepicker, allows to subscribe to changes to
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
985 and
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
986, and set the initial time for this picker.
TooltipBox
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
72
Material TooltipBox that wraps a composable with a tooltip.
tooltips provide a descriptive message for an anchor. It can be used to call the users attention to the anchor.
Tooltip that is invoked when the anchor is long pressed:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
73
If control of when the tooltip is shown is desired please see
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
74
Plain tooltip with caret shown on long press:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
75
Tooltip that is invoked when the anchor is long pressed:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
76
If control of when the tooltip is shown is desired please see
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
77
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
987
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
988 that will be used to place the tooltip relative to the anchor content.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
989
the composable that will be used to populate the tooltip's content.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
990
handles the state of the tooltip's visibility.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to the TooltipBox.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
993
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
994 that determines if the tooltip is focusable. When true, the tooltip will consume touch events while it's shown and will have accessibility focus move to the first element of the component. When false, the tooltip won't consume touch events while it's shown but assistive-tech users will need to swipe or drag to get to the first element of the component.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
995
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
994 which determines if this TooltipBox will handle long press and mouse hover to trigger the tooltip through the state provided.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the composable that the tooltip will anchor to.
TooltipState
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
78
Constructor extension function for
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]49
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
999
the initial value for the tooltip's visibility when drawn.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}000
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
994 that determines if the tooltip associated with this will be persistent or not. If isPersistent is true, then the tooltip will only be dismissed when the user clicks outside the bounds of the tooltip or if
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}002 is called. When isPersistent is false, the tooltip will dismiss after a short duration. Ideally, this should be set to true when there is actionable content being displayed within a tooltip.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}003
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}004 used to ensure that for all of the tooltips associated with the mutator mutex, only one will be shown on the screen at any time.
TopAppBar
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
79
Material Design small top app bar.
Top app bars display information and actions at the top of a screen.
This small TopAppBar has slots for a title, navigation icon, and actions.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
10
A top app bar that uses a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}005 to customize its nested scrolling behavior when working in conjunction with a scrolling content looks like:
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
11
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
12
TriStateCheckbox
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
83
Material Design checkbox parent.
Checkboxes can have a parent-child relationship with other checkboxes. When the parent checkbox is checked, all child checkboxes are checked. If a parent checkbox is unchecked, all child checkboxes are unchecked. If some, but not all, child checkboxes are checked, the parent checkbox becomes an indeterminate checkbox.
Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
84
Parameters
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}006
whether this checkbox is checked, unchecked, or in an indeterminate state
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
102
called when this checkbox is clicked. If
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79, then this checkbox will not be interactable, unless something else handles its input events and updates its
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}009.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this checkbox
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this checkbox. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}90
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}91 that will be used to resolve the colors used for this checkbox in different states. See
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}92.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this checkbox. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this checkbox in different states.
See also
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}26
if you want a simple component that represents Boolean state
VerticalDivider
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
85
Material Design divider.
A divider is a thin line that groups content in lists and layouts.
Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this divider line.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}525
thickness of this divider line. Using
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}526 will produce a single pixel divider regardless of screen density.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}527
color of this divider line.
darkColorScheme
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
86
Returns a dark Material color scheme.
dynamicDarkColorScheme
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
87
Creates a dark dynamic color scheme.
Use this function to create a color scheme based off the system wallpaper. If the developer changes the wallpaper this color scheme will change accordingly. This dynamic scheme is a dark theme variant.
Parameters
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}028
The context required to get system resource data.
dynamicLightColorScheme
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
88
Creates a light dynamic color scheme.
Use this function to create a color scheme based off the system wallpaper. If the developer changes the wallpaper this color scheme will change accordingly. This dynamic scheme is a light theme variant.
Parameters
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}028
The context required to get system resource data.
lightColorScheme
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
89
Returns a light Material color scheme.
rememberDatePickerState
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
90
Creates a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}32 for a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}35 that is remembered across compositions.
To create a date picker state outside composition, see the
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}032 function.
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}048
timestamp in UTC milliseconds from the epoch that represents an initial selection of a date. Provide a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 to indicate no selection.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}051
timestamp in UTC milliseconds from the epoch that represents an initial selection of a month to be displayed to the user. By default, in case an
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}036 is provided, the initial displayed month would be the month of the selected date. Otherwise, in case
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 is provided, the displayed month would be the current one.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}053
an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}054 that holds the year range that the date picker will be limited to
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}055
an initial
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}056 that this state will hold
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}057
a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}014 that is consulted to check if a date is allowed. In case a date is not allowed to be selected, it will appear disabled in the UI.
rememberDateRangePickerState
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
91
Creates a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
icon = { Icon[Icons.Filled.Favorite, contentDescription = null] },
title = {
Text[text = "Title"]
},
text = {
Text[
"This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose."
]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}37 for a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}36 that is remembered across compositions.
To create a date range picker state outside composition, see the
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}046 function.
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}075
timestamp in UTC milliseconds from the epoch that represents an initial selection of a start date. Provide a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 to indicate no selection.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}077
timestamp in UTC milliseconds from the epoch that represents an initial selection of an end date. Provide a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 to indicate no selection.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}079
timestamp in UTC milliseconds from the epoch that represents an initial selection of a month to be displayed to the user. By default, in case an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}080 is provided, the initial displayed month would be the month of the selected date. Otherwise, in case
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
79 is provided, the displayed month would be the current one.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}053
an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}054 that holds the year range that the date range picker will be limited to
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}055
an initial
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}056 that this state will hold
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}057
a
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}014 that is consulted to check if a date is allowed. In case a date is not allowed to be selected, it will appear disabled in the UI.
rememberTimePickerState
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
92
Creates a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
03 for a time picker that is remembered across compositions and configuration changes.
Parameters
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}061
starting hour for this state, will be displayed in the time picker when launched Ranges from 0 to 23
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}062
starting minute for this state, will be displayed in the time picker when launched. Ranges from 0 to 59
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}063
The format for this time picker.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64 for 12 hour format with an AM/PM toggle or
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}936 for 24 hour format without toggle. Defaults to follow system setting.
rememberTooltipState
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
93
Create and remember the default
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]49 for
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
09.
Parameters
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
999
the initial value for the tooltip's visibility when drawn.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}069
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
994 that determines if the tooltip associated with this will be persistent or not. If isPersistent is true, then the tooltip will only be dismissed when the user clicks outside the bounds of the tooltip or if
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}002 is called. When isPersistent is false, the tooltip will dismiss after a short duration. Ideally, this should be set to true when there is actionable content being displayed within a tooltip.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}003
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}004 used to ensure that for all of the tooltips associated with the mutator mutex, only one will be shown on the screen at any time.
Extension functions
NavigationBarItem
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
94
Material Design navigation bar item.
Navigation bars offer a persistent and convenient way to switch between primary destinations in an app.
The recommended configuration for a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}52 depends on how many items there are inside a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}51:
- Three destinations: Display icons and text labels for all destinations.
- Four destinations: Active destinations display an icon and text label. Inactive destinations display icons, and text labels are recommended.
- Five destinations: Active destinations display an icon and text label. Inactive destinations use icons, and use text labels if space permits.
A
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}52 always shows text labels [if it exists] when selected. Showing text labels if not selected is controlled by
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}077.
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}471
whether this item is selected
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
called when this item is clicked
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}331
icon for this item, typically an
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}332
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this item
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this item. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}805
optional text label for this item
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}806
whether to always show the label for this item. If
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, the label will only be shown when this item is selected.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}089
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}090 that will be used to resolve the colors used for this item in different states. See
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}091.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this item. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this item in different states.
PlainTooltip
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
95
Plain tooltip that provides a descriptive message.
Usually used with
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
09.
Parameters
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to the tooltip.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}100
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}101 for the caret of the tooltip, if a default caret is desired with a specific dimension. Please see
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}102 to see the default dimensions. Pass in null for this parameter if no caret is desired.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}103
the
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
190 that should be applied to the tooltip container.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}105
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]58 that will be applied to the tooltip's content.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}107
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]58 that will be applied to the tooltip's container.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
470
the tonal elevation of the tooltip.
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
473
the shadow elevation of the tooltip.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
34
the composable that will be used to populate the tooltip's content.
SegmentedButton
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
96
Material Segmented Button. Segmented buttons help people select options, switch views, or sort elements.
A default Toggleable Segmented Button. Also known as Outlined Segmented Button. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
551.
Toggleable segmented buttons should be used for cases where the selection is not mutually exclusive.
This should typically be used inside of a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}67
For a sample showing Segmented button with only checked icons see:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}34
Parameters
import androidx.compose.material3.Badge import androidx.compose.material3.BadgedBox import androidx.compose.material3.Icon import androidx.compose.material3.NavigationBar import androidx.compose.material3.NavigationBarItem import androidx.compose.material3.Text import androidx.compose.ui.semantics.semantics NavigationBar {
NavigationBarItem[
icon = {
BadgedBox[
badge = {
Badge {
val badgeNumber = "8"
Text[
badgeNumber,
modifier = Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
]
}
}] {
Icon[
Icons.Filled.Star,
contentDescription = "Favorite"
]
}
},
selected = false,
onClick = {}
]
}83
whether this button is checked or not
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}380
callback to be invoked when the button is clicked. therefore the change of checked state in requested.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}116
the shape for this button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}121
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}122 that will be used to resolve the colors used for this
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}123
the border for this button, see
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}122 Button in different states
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this button in different states.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}130
the icon slot for this button, you can pass null in unchecked, in which case the content will displace to show the checked icon, or pass different icon lambdas for unchecked and checked in which case the icons will crossfade.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
60
content to be rendered inside this button
SegmentedButton
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
98
Material Segmented Button. Segmented buttons help people select options, switch views, or sort elements.
A default Toggleable Segmented Button. Also known as Outlined Segmented Button. See
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
602.
Selectable segmented buttons should be used for cases where the selection is mutually exclusive, when only one button can be selected at a time.
This should typically be used inside of a
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}66
For a sample showing Segmented button with only checked icons see:
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}93
Parameters
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
BasicAlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
}
] {
Surface[
modifier = Modifier
.wrapContentWidth[]
.wrapContentHeight[],
shape = MaterialTheme.shapes.large,
tonalElevation = AlertDialogDefaults.TonalElevation
] {
Column[modifier = Modifier.padding[16.dp]] {
Text[
text = "This area typically contains the supportive text " +
"which presents the details regarding the Dialog's purpose.",
]
Spacer[modifier = Modifier.height[24.dp]]
TextButton[
onClick = {
openDialog.value = false
},
modifier = Modifier.align[Alignment.End]
] {
Text["Confirm"]
}
}
}
}
}471
whether this button is selected or not
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
59
callback to be invoked when the button is clicked. therefore the change of checked state in requested.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}116
the shape for this button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
31
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
23 to be applied to this button
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
63
controls the enabled state of this button. When
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
64, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}121
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}122 that will be used to resolve the colors used for this
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}143
the border for this button, see
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}122 Button in different states
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
81
the
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
82 representing the stream of
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s for this button. You can create and pass in your own
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
84ed instance to observe
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
83s and customize the appearance / behavior of this button in different states.
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}150
the icon slot for this button, you can pass null in unchecked, in which case the content will displace to show the checked icon, or pass different icon lambdas for unchecked and checked in which case the icons will crossfade.
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
60
content to be rendered inside this button
minimumInteractiveComponentSize
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}00
Reserves at least 48.dp in size to disambiguate touch interactions if the element would measure smaller.
//m3.material.io/foundations/accessible-design/accessibility-basics
28032e45-c598-450c-b355-f9fe737b1cd8
This uses the Material recommended minimum size of 48.dp x 48.dp, which may not the same as the system enforced minimum size. The minimum clickable / touch target size [48.dp by default] is controlled by the system via ViewConfiguration` and automatically expanded at the touch input layer.
This modifier is not needed for touch target expansion to happen. It only affects layout, to make sure there is adequate space for touch target expansion.
surfaceColorAtElevation
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}01
Computes the surface tonal color at different elevation levels e.g. surface1 through surface5.
Parameters
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}152
Elevation value used to compute alpha of the color overlay layer.
Top-level properties
LocalAbsoluteTonalElevation
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}02
CompositionLocal containing the current absolute elevation provided by
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56 components. This absolute elevation is a sum of all the previous elevations. Absolute elevation is only used for calculating surface tonal colors, and is not used for drawing the shadow in a
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
56.
LocalContentColor
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}03
CompositionLocal containing the preferred content color for a given position in the hierarchy. This typically represents the
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}155 color for a color in
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}09. For example, if the background color is
@Composable fun [Badge][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
Badge%28androidx.compose.ui.Modifier,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,kotlin.Function1%29][
modifier: Modifier = Modifier, containerColor: Color = BadgeDefaults.containerColor, contentColor: Color = contentColorFor[containerColor], content: [@Composable RowScope.[] -> Unit]? = null ]: Unit
55, this color is typically set to
@Composable fun [AlertDialog][//developer.android.com/reference/kotlin/androidx/compose/material3/package-summary
AlertDialog%28kotlin.Function0,kotlin.Function0,androidx.compose.ui.Modifier,kotlin.Function0,kotlin.Function0,kotlin.Function0,kotlin.Function0,androidx.compose.ui.graphics.Shape,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.graphics.Color,androidx.compose.ui.unit.Dp,androidx.compose.ui.window.DialogProperties%29][
onDismissRequest: [] -> Unit, confirmButton: @Composable [] -> Unit, modifier: Modifier = Modifier, dismissButton: [@Composable [] -> Unit]? = null, icon: [@Composable [] -> Unit]? = null, title: [@Composable [] -> Unit]? = null, text: [@Composable [] -> Unit]? = null, shape: Shape = AlertDialogDefaults.shape, containerColor: Color = AlertDialogDefaults.containerColor, iconContentColor: Color = AlertDialogDefaults.iconContentColor, titleContentColor: Color = AlertDialogDefaults.titleContentColor, textContentColor: Color = AlertDialogDefaults.textContentColor, tonalElevation: Dp = AlertDialogDefaults.TonalElevation, properties: DialogProperties = DialogProperties[] ]: Unit
459.
This color should be used for any typography / iconography, to ensure that the color of these adjusts when the background color changes. For example, on a dark background, text should be light, and on a light background, text should be dark.
Defaults to
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}159 if no color has been explicitly set.
LocalMinimumInteractiveComponentEnforcement
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}04
CompositionLocal that configures whether Material components that have a visual size that is lower than the minimum touch target size for accessibility [such as Button] will include extra space outside the component to ensure that they are accessible. If set to false there will be no extra space, and so it is possible that if the component is placed near the edge of a layout / near to another component without any padding, there will not be enough space for an accessible touch target.
LocalMinimumTouchTargetEnforcement
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}05
CompositionLocal that configures whether Material components that have a visual size that is lower than the minimum touch target size for accessibility [such as
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}- will include extra space outside the component to ensure that they are accessible. If set to false there will be no extra space, and so it is possible that if the component is placed near the edge of a layout / near to another component without any padding, there will not be enough space for an accessible touch target.
ScaffoldSubcomposeInMeasureFix
import androidx.compose.material3.AlertDialog import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember val openDialog = remember { mutableStateOf[true] } if [openDialog.value] {
AlertDialog[
onDismissRequest = {
// Dismiss the dialog when the user clicks outside the dialog or on the back
// button. If you want to disable that functionality, simply use an empty
// onDismissRequest.
openDialog.value = false
},
title = {
Text[text = "Title"]
},
text = {
Text[text = "Turned on by default"]
},
confirmButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Confirm"]
}
},
dismissButton = {
TextButton[
onClick = {
openDialog.value = false
}
] {
Text["Dismiss"]
}
}
]
}06
Flag indicating if
import androidx.compose.foundation.layout.size import androidx.compose.material3.AssistChip import androidx.compose.material3.Icon import androidx.compose.material3.Text AssistChip[
onClick = { /* Do something! */ },
label = { Text["Assist Chip"] },
leadingIcon = {
Icon[
Icons.Filled.Settings,
contentDescription = "Localized description",
Modifier.size[AssistChipDefaults.IconSize]
]
}
]09 should subcompose and measure its children during measurement or during placement. Set this flag to false to keep Scaffold's old measurement behavior [measuring in placement].
This flag will be removed in Compose 1.6.0-beta01. If you encounter any issues with the new behavior, please file an issue at: issuetracker.google.com/issues/new?component=742043
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2024-02-08 UTC.
[{ "type": "thumb-down", "id": "missingTheInformationINeed", "label":"Missing the information I need" },{ "type": "thumb-down", "id": "tooComplicatedTooManySteps", "label":"Too complicated / too many steps" },{ "type": "thumb-down", "id": "outOfDate", "label":"Out of date" },{ "type": "thumb-down", "id": "samplesCodeIssue", "label":"Samples / code issue" },{ "type": "thumb-down", "id": "otherDown", "label":"Other" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Easy to understand" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Solved my problem" },{ "type": "thumb-up", "id": "otherUp", "label":"Other" }]
How to set padding top programmatically in android?
Use the setPadding[left, top, right, bottom] method on the view to set the padding. The integers passed as parameters to this function are the number of pixels [px], which are different from the density-independent pixels [dp or dip].
What is padding in Android layout?
The padding is expressed in pixels for the left, top, right and bottom parts of the view. You can use padding to offset the content of the view by a specific number of pixels. For instance, a left padding of two pushes the view's content two pixels to the right of the left edge.
How to set style to layout in android?
There are two ways to set a style:.
To an individual View, by adding the style attribute to a View element in the XML for your layout..
Or, to an entire Activity or application, by adding the android:theme attribute to the or element in the Android manifest..
What is difference margin padding Android?
Difference between Margin and Padding in AndroidMargin defines the extra space outside the border of a view. Padding defines the extra space inside the border of a view. Margin is used to create extra space between two views. Padding is used to create extra space around the content of a view.