State of Compose 2023 results are in! Click here to learn more

← Back to Tv Material

TriStateCheckbox

Component
in
Tv Material
. Since 1.0.0-alpha07

Overview

Code Examples

Video

<a href="https://m3.material.io/components/checkbox/guidelines" class="external" target="_blank">Material Design checkbox</a> 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.

!Checkbox image(https://developer.android.com/images/reference/androidx/compose/material3/indeterminate-checkbox.png)

@see Checkbox if you want a simple component that represents Boolean state

@param state whether this checkbox is checked, unchecked, or in an indeterminate state @param onClick called when this checkbox is clicked. If null, then this checkbox will not be interactable, unless something else handles its input events and updates its state. @param modifier the Modifier to be applied to this checkbox @param enabled controls the enabled state of this checkbox. When false, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services. @param colors CheckboxColors that will be used to resolve the colors used for this checkbox in different states. See CheckboxDefaults.colors. @param interactionSource the MutableInteractionSource representing the stream of Interactions for this checkbox. You can create and pass in your own remembered instance to observe Interactions and customize the appearance / behavior of this checkbox in different states.

Overloads

TriStateCheckbox

@ExperimentalTvMaterial3Api
@Composable
fun TriStateCheckbox(
    state: ToggleableState,
    onClick: (() -> Unit)?,
    modifier: Modifier = Modifier,
    enabled: Boolean = true,
    colors: CheckboxColors = CheckboxDefaults.colors(),
    interactionSource: MutableInteractionSource = remember { MutableInteractionSource() }
)

Parameters

NameDescription
statewhether this checkbox is checked, unchecked, or in an indeterminate state
onClickcalled when this checkbox is clicked. If null, then this checkbox will not be interactable, unless something else handles its input events and updates its state.
modifierthe Modifier to be applied to this checkbox
enabledcontrols the enabled state of this checkbox. When false, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services.
colorsCheckboxColors that will be used to resolve the colors used for this checkbox in different states. See CheckboxDefaults.colors.
interactionSourcethe MutableInteractionSource representing the stream of Interactions for this checkbox. You can create and pass in your own remembered instance to observe Interactions and customize the appearance / behavior of this checkbox in different states