android - CardView的优缺点

标签 android performance android-layout android-widget android-cardview

CardView的优点和缺点是什么,除了阴影或高程,在性能和外观上有什么好处?使用 CardView 完成的事情也可以使用其他布局的组合来完成。

最佳答案

Cardview的优点绝对是它默认实现了阴影和圆角,简单来说Cardview就是一个带有阴影和圆角的FrameLayout。你可以用 Cardview 做几乎相同的事情,你可以用 Framelayout 做(因为 Cardview extends FrameLayout )。 API>21 的 Cardview 使用海拔 api 来设置阴影,而对于 API 21 以下,它添加了一个灰色背景的填充来创建假阴影(就像您所说的自定义实现一样)。

Cardview 被设计为在其内部保存单个 subview ,并且由于不支持诸如 layout_below< 之类的属性,因此很难在不相互重叠的情况下管理多个 subview ,layout_torightof 等。为了克服这个问题,开发人员采取的方法是在 Cardview 中添加另一个 Relativelayout 来管理 subview ,现在由于嵌套布局,这将导致更多的资源消耗。

要处理复杂的布局,建议使用自定义 View ,而仅使用单个 subview 使用 Cardview

简单地把圆角边缘和阴影的开销: 如果您将 Framelayout 视为蛋糕,那么高程就像糖霜,而圆形边缘就像樱桃面。糖衣和浇头的美感,但你必须为糖衣和樱桃花额外的钱。

关于android - CardView的优缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28794725/

相关文章:

database - 嵌入式沙发数据库

mysql - 远程 MySQL 连接速度慢

android - 一个接一个地对齐动态 TextView

android - ScrollView 内的约束布局,引导线高度始终变化

android - <activity-alias> list 标签

java - 使用 Android 触摸屏捕捉游戏(如《愤怒的小鸟》)的 Action 或击键

android - 从android中的运动事件获取所有x和y坐标

大型数据库中子查询的MySQL效率

java - 如何使用 ConstraintLayout 管理带有布局的自定义 View 的宽度?

android - 使用请求焦点时,Scrollview 中的 EditText 无法获得焦点