我已将CardView的背景和FrameLayout设置为透明但结果仍为白色bg。
这是一些默认行为吗?我应该如何更改我的xml布局文件以获得透明的bg?
布局文件:
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
card_view:cardBackgroundColor="@android:color/transparent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp">
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:background="@android:color/transparent"
android:layout_width="match_parent"
android:layout_height="140dp"
tools:layout_gravity="center">
<TextView
android:id="@+id/dayID"
android:textColor="@color/link_text_material_light"
android:textSize="26dp"
android:layout_marginLeft="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/monthID"
android:textColor="@color/link_text_material_light"
android:layout_marginLeft="60dp"
android:textSize="26dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/splashID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/link_text_material_light"
android:textSize="26dp"
android:layout_gravity="center"
android:gravity="center"
android:padding="20dp"
tools:text="Hero text" />
<TextView
android:id="@+id/sunbathMinsID"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/link_text_material_light"
android:textSize="26dp"
android:layout_gravity="bottom"
android:gravity="center"
android:padding="20dp"
tools:text="Hero text" />
</FrameLayout>
</android.support.v7.widget.CardView>
答案 0 :(得分:0)
可以为XML中的任意数量的视图获得透明的背景。 这是对imageview的恰当解释。 Set transparent background of an imageview on Android
Cardviews大致相同,但属性略有不同,并且使用“ app:cardBackgroundColor =” @android:color / transparent“进行了很好的解释 有关该类型的属性,请参见这篇文章。 Transparent background on CardView - Android
将cardView和后续的FrameLayout都设置为透明肯定可以完成工作并使两个视图都透明。但是,活动始终具有扎实的背景。仅当您将资源设置为背景时,活动才没有固定的背景,并且如上链接所示,如果活动中的视图设置为透明,则放置在该活动中的视图将显示当前背景。
因此,即使将“视图”设置为透明,“活动”将始终需要使用颜色或图像来在背景中显示。就是说,是的,除非更改颜色,否则cardView后面仍将有白色背景。