IconToggleButton
Common
Component in Material Compose
An [IconButton] with two states, for icons that can be toggled 'on' and 'off', such as a bookmark icon, or a navigation icon that opens a drawer.
Last updated:
Installation
dependencies {
implementation("androidx.compose.material:material:1.8.0-alpha04")
}
Overloads
@Composable
fun IconToggleButton(
checked: Boolean,
onCheckedChange: (Boolean) -> Unit,
modifier: Modifier = Modifier,
enabled: Boolean = true,
interactionSource: MutableInteractionSource? = null,
content: @Composable () -> Unit
)
Parameters
name | description |
---|---|
checked | whether this IconToggleButton is currently checked |
onCheckedChange | callback to be invoked when this icon is selected |
modifier | optional [Modifier] for this IconToggleButton |
enabled | enabled whether or not this [IconToggleButton] will handle input events and appear enabled for semantics purposes |
interactionSource | an optional hoisted [MutableInteractionSource] for observing and emitting [Interaction]s for this IconButton. You can use this to change the IconButton's appearance or preview the IconButton in different states. Note that if null is provided, interactions will still happen internally. |
content | the content (icon) to be drawn inside the IconToggleButton. This is typically an [Icon]. |
Code Example
IconToggleButtonSample
@Composable
fun IconToggleButtonSample() {
var checked by remember { mutableStateOf(false) }
IconToggleButton(checked = checked, onCheckedChange = { checked = it }) {
val tint by animateColorAsState(if (checked) Color(0xFFEC407A) else Color(0xFFB0BEC5))
Icon(Icons.Filled.Favorite, contentDescription = "Localized description", tint = tint)
}
}