将内容设置为Cardview 5.0之前的边缘

时间:2015-02-05 21:34:08

标签: android android-cardview

我正在使用v7支持库中的CardView布局作为我应用中的主要设计模式。它在Lollipop上的效果非常好,如你所料,看起来像这样:

enter image description here

如果我在4.4或更低版本上运行同一个应用程序,则卡片中的内容不会显示在此处:

enter image description here

有没有一种方法可以让我的内容在所有Android版本上都有优势而不只是5.0?

由于

1 个答案:

答案 0 :(得分:4)

不幸的是,CardView的创造者没有想出一种有效的方法来创建圆角,这种角可以用于运行Lollipop早期版本的设备上的任何布局。因此,填充只是添加到卡的内容中。要防止此填充,请使用此方法:

cardView.setPreventCornerOverlap(false);

但是,如果这样做,ImageView的角落将被绘制在CardView的圆角上。解决这个问题的方法是创建一个自定义的ImageView(或Drawable,或Picasso transfromation ...)来绘制圆角。请查看Gist如何执行此操作。

由于您使用带有标题图片的卡片的公共布局,您可以检查this library由同一作者创建圆角而不填充。