BadgedBox
Common
Component in Material Compose
A BadgeBox is used to decorate [content] with a [badge] that can contain dynamic information, such as the presence of a new notification or a number of pending requests. Badges can be icon only or contain short text.
A common use case is to display a badge with bottom navigation items. For more information, see Bottom Navigation
Last updated:
Installation
dependencies {
implementation("androidx.compose.material:material:1.8.0-alpha04")
}
Overloads
@Composable
fun BadgedBox(
badge: @Composable BoxScope.() -> Unit,
modifier: Modifier = Modifier,
content: @Composable BoxScope.() -> Unit,
)
Parameters
name | description |
---|---|
badge | the badge to be displayed - typically a [Badge] |
modifier | optional [Modifier] for this item |
content | the anchor to which this badge will be positioned |
Code Example
BottomNavigationItemWithBadge
@Composable
fun BottomNavigationItemWithBadge() {
BottomNavigation {
BottomNavigationItem(
icon = {
BadgedBox(
badge = {
Badge {
val badgeNumber = "8"
Text(
badgeNumber,
modifier =
Modifier.semantics {
contentDescription = "$badgeNumber new notifications"
}
)
}
}
) {
Icon(Icons.Filled.Favorite, contentDescription = "Favorite")
}
},
selected = false,
onClick = {}
)
}
}