1

I want to have a shape that does not "inherit" the background of whatever is lying underneath

In this case the gray background overrides the inner items background. My goal is that the inner items background is empty

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
            android:bottom="2dp"
            android:left="1dp"
            android:right="1dp">
        <shape>
            <solid android:color="@android:color/darker_gray" />
            <stroke
                    android:width="2dp"
                    android:color="@android:color/darker_gray" />
            <corners android:radius="20dp" />
            <padding
                    android:bottom="5dp"
                    android:left="5dp"
                    android:right="5dp"
                    android:top="5dp" />
        </shape>
    </item>
    <item
            android:bottom="30dp"
            android:left="30dp"
            android:right="30dp"
            android:top="20dp">
        <shape>
            <stroke android:width="2dp" />
            <corners android:radius="50dp" />
            <padding
                    android:bottom="15dp"
                    android:left="15dp"
                    android:right="15dp"
                    android:top="15dp" />
        </shape>
    </item>
</layer-list>

I want here the second item not to have an gray background, like it's cut out of the first item.

Martin
  • 11
  • 2

1 Answers1

0

Add <solid android:color="#fff"/> into your second item.

The full code of drawale is:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:bottom="2dp"
        android:left="1dp"
        android:right="1dp">
        <shape>
            <solid android:color="@android:color/darker_gray" />
            <stroke
                android:width="2dp"
                android:color="@android:color/darker_gray" />
            <corners android:radius="20dp" />
            <padding
                android:bottom="5dp"
                android:left="5dp"
                android:right="5dp"
                android:top="5dp" />
        </shape>
    </item>
    <item
        android:bottom="30dp"
        android:left="30dp"
        android:right="30dp"
        android:top="20dp">
        <shape>
            <stroke android:width="2dp" />
            <corners android:radius="50dp" />
            <padding
                android:bottom="15dp"
                android:left="15dp"
                android:right="15dp"
                android:top="15dp" />
            <solid android:color="#fff"/>
        </shape>
    </item>
</layer-list>

I hope its work for you.

Android Geek
  • 8,956
  • 2
  • 21
  • 35