Spe*_*eed 3 kotlin android-jetpack-compose
BadgeBox(badgeContent = { Text("8") }) {
Icon(
Icons.Filled.Favorite,
contentDescription = "Favorite"
)
}
Run Code Online (Sandbox Code Playgroud)
我有一个BadgeBox这样的。但如果值为0,我希望徽章消失。如果我将 null 传递给badgeContent,圆圈仍然会显示,但里面什么也没有。
我怎样才能完全隐藏它?
Phi*_*hov 11
由于1.1.0 Badge已从 移出BadgeBox,因此如果您使用 Compose 版本1.1.x或更高版本,则可以按如下方式使用它:
BadgedBox(
badge = {
if (count > 0) {
Badge {
Text("$count")
}
}
}
) {
Icon(
Icons.Filled.Favorite,
contentDescription = "Favorite"
)
}
Run Code Online (Sandbox Code Playgroud)
版本1.0.x的解决方案。
backgroundColor当不需要显示徽章时,可以指定为透明颜色:
BadgeBox(
badgeContent = {
if (count > 0) {
Text("$count")
}
},
backgroundColor = if (count > 0) MaterialTheme.colors.error else Color.Transparent
) {
Icon(
Icons.Filled.Favorite,
contentDescription = "Favorite"
)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2347 次 |
| 最近记录: |