从 ImageCardView 中删除背景

Posted

技术标签:

【中文标题】从 ImageCardView 中删除背景【英文标题】:Remove background from ImageCardView 【发布时间】:2016-08-06 01:53:45 【问题描述】:

我开始使用新的android.support.v17.leanback 库,但在设计ImageCardView 时遇到了一些麻烦。

我正在更改ImageCardView 上的图像以具有不同的形状,因此我想删除在ListRow 中使用卡片时自动生成的背景和阴影。如果我离开阴影,我的卡片看起来很奇怪,因为阴影和背景显示出来就像卡片是正方形的一样。

我尝试为所有元素设置不同的背景,但它不起作用。如果我设置正常的背景颜色(绿色、蓝色等),图像或信息区域的背景会改变,但如果我设置透明背景,则可以看到另一个包裹整张卡片的背景。

任何想法如何解决这个问题?

【问题讨论】:

在此处发布您的相关代码。 @Astagron 您是否设法使用透明背景? 【参考方案1】:

您的问题不在于CardView 本身,而在于您的演示者。把这行放在你的RowPresenter/ListRowPresenter:

listRowPresenter.setShadowEnabled(false);

此外,在this Medium article 中,您可以看到如何使您成为CardView 循环。并且它显示了如何在行未聚焦时移除阴影,将isUsingDefaultListSelectEffect() 方法覆盖为始终为false

【讨论】:

【参考方案2】:

根据这个post,你不能改变背景drawable,只能改变颜色。

你可以试试

public void setBackground (Drawable background)
-Set the background to a given Drawable, or remove the background

【讨论】:

以上是关于从 ImageCardView 中删除背景的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Angular 2 中获得完全着色的 mat-card-header 背景?

v-card 组件 Vuetify 的背景图片未显示

离子卡背景透明白色

拉伸 flexbox 子元素以填充列高

删除/隐藏 card.io/paypal 徽标 android

如何在 iOS 中完全删除/隐藏 card.io/paypal 徽标