Android CardView with weird border when transparent

ぐ巨炮叔叔 提交于 2020-01-12 12:53:25

问题


I'm having some trouble with CardView transparency and card_elevation. Trying to use a CardView transparent the result is:

Without transparency:

What I'm trying to get is something like this:

Here is my xml:

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@mipmap/eifell"
    android:padding="10dp"
    tools:context=".MainActivity">

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="5dp"
        android:background="@android:color/transparent">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <android.support.v7.widget.CardView
                android:id="@+id/newsCardView"
                android:layout_width="match_parent"
                android:layout_height="175dp"
                card_view:cardBackgroundColor="#602B608A"
                card_view:cardElevation="5dp">

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:background="@android:color/transparent">
                </LinearLayout>

            </android.support.v7.widget.CardView>

        </LinearLayout>
    </ScrollView>

</RelativeLayout>

回答1:


I know i am a bit late, but it's just because of card default elevation. Set it to zero to solve your problem.

app:cardElevation="0dp"



回答2:


Try this code:

 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:id="@+id/newsCardView"
        android:layout_width="175dp"
        android:layout_height="175dp"
        card_view:cardBackgroundColor="#602B608A"
        card_view:cardCornerRadius="0dp"
        card_view:cardElevation="5dp">

    </android.support.v7.widget.CardView>

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/imageView"
        android:layout_gravity="left|top"
        android:src="@drawable/fake_image" /> //REPLACE THIS WITH YOUR IMAGE
</FrameLayout>

If it not helped, provide whole xml code of your layout



来源:https://stackoverflow.com/questions/31624085/android-cardview-with-weird-border-when-transparent

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!