我有一张卡片视图,背景色透明,海拔高度为4dp。
似乎没有办法阻止阴影在透明卡片内可见。我不断得到一个奇怪的轮廓,必须是下面画的阴影。
有没有办法(适用于API 21及以上版本)只能在我的卡片外面绘制阴影,这样我就可以使用透明色而不会产生伪影?
卡片查看STYLE xml
<style name="GridCard" parent="CardView">
<item name="cardCornerRadius">4dp</item>
<item name="cardElevation">4dp</item>
<item name="cardUseCompatPadding">true</item>
<item name="android:layout_marginLeft">8dp</item>
<item name="android:layout_marginRight">8dp</item>
<item name="android:layout_marginTop">16dp</item>
<item name="cardBackgroundColor">@color/white_70</item>
</style>
white_70
是#50FFFFFF
这里看起来像是什么(由阴影引起的奇怪边框):
答案 0 :(得分:0)
使用cardUseCompatPadding
作为false
删除内部padding
和shadow
。
尝试这种风格:
<style name="GridCard" parent="CardView">
<item name="cardCornerRadius">4dp</item>
<item name="cardElevation">4dp</item>
<item name="cardUseCompatPadding">false</item>
<item name="android:layout_marginLeft">8dp</item>
<item name="android:layout_marginRight">8dp</item>
<item name="android:layout_marginTop">16dp</item>
<item name="cardBackgroundColor">@color/white_70</item>
</style>