Jetpack Compose 中的 Surface 和 Card 有什么区别?

Ari*_*erá 16 android android-jetpack-compose android-compose-card android-jetpack-compose-surface

基本上是一样的吧?它们具有相同的属性。我真的不知道什么时候必须使用每一个。

从技术上讲,Cards 用于卡片视图,但 Surface 具有相同的属性,如elevationborder

Mob*_*dim 15

如果您查看 Card 可组合源,您会明白卡片是具有默认标高的表面,背景形状是 MaterialTheme.shapes.medium

文档“卡片是显示单个主题的内容和操作的表面”。


RaB*_* 78 5

一切都与材料设计指南有关

当你阅读Material Design文档时,你会明白这两个组件有不同的用途。

Surface当你想要一个表面时使用UI,你可以设置background颜色、形状等。

Card另一方面,具有默认标高(材料设计标准)并且几乎将每个属性都作为surface.

一切都与遵循材料设计指南有关