Android Jetpack Compose 中的图标和图像有什么区别?

Kos*_*uba 31 android kotlin android-jetpack-compose

Android Jetpack Compose 中的图标和图像有什么区别?是Icon用于矢量图像,而 是Image用于位图?

Phi*_*hov 37

Icon材料设计的一部分。因此,它的默认大小为24.dp,如 Material 指南所定义,并且应该用于显示该大小的图标。它将使用LocalContentColor图像色调的值 - 如果您使用材质组件,例如Card,它们将根据当前材质主题或覆盖的组件参数提供它。或者您可以通过参数手动更改它tint

最常见的用法是将其与预定义的材质图标一起使用,如下所示:

Icon(
    Icons.Default.Hub,
    contentDescription = "...",
    tint = Color.Black
)
Run Code Online (Sandbox Code Playgroud)

但是您也可以在代码中创建自己的图标,请查看任何默认图标的源代码以供参考。您还可以使用它来显示资源图标或可绘制对象,它们将被缩放以适合。

Image是一个用于显示任何类型图像的 Compose 容器。它更加灵活,比如您可以设置contentScalecolorFilter、 和alignment