Android 可绘制 xml 反转角

Android drawable xml reverse corners

我正在尝试在 Android 工作室中复制以下形状:

我不知道如何在 android 可绘制 xml 中做到这一点。

目前我使用了一个图层列表,其中: 作为第一个项目,我放置了一个透明(或白色)的矩形,我在左侧和垂直方向对其进行了填充。 作为第二项,我在左侧放置了一个包含渐变和角的矩形。

现在不知道怎么才能把右边的两个“反角”弄出来,我都试过了,网上没有多少例子可以参考。

这是我当前的代码:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
            <item>
                <shape android:shape="rectangle">

                    <solid android:color="@color/transparent" />
                    <padding
                        android:bottom="8dp"
                        android:left="8dp"
                        android:right="0dp"
                        android:top="8dp" />
                </shape>
            </item>

            <item>
                <shape android:shape="rectangle">

                    <gradient
                        android:angle="0"
                        android:endColor="@color/green"
                        android:startColor="@color/blue"
                        android:type="linear" />
                    <corners
                        android:bottomLeftRadius="22dp"
                        android:bottomRightRadius="0dp"
                        android:topLeftRadius="22dp"
                        android:topRightRadius="0dp" />
                </shape>
            </item>

</layer-list>

如何更改代码以获得此形状?

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:width="600dp"
        android:height="400dp">
        <shape android:shape="rectangle">

            <gradient
                android:angle="0"
                android:endColor="@android:color/holo_green_light"
                android:startColor="@android:color/holo_blue_light"
                android:type="linear" />
        </shape>
    </item>


    <item android:width="600dp"
        android:height="100dp">
        <shape android:shape="rectangle">
            <solid android:color="@android:color/white" />
            <corners android:bottomRightRadius="100dp" />
        </shape>
    </item>

    <item android:width="600dp"
        android:height="100dp"
        android:top="300dp">
        <shape android:shape="rectangle">
            <solid android:color="@android:color/white" />
            <corners android:topRightRadius="100dp" />
        </shape>
    </item>

    <item android:width="200dp"
        android:height="200dp"
        android:top="100dp">
        <shape android:shape="rectangle">
            <solid android:color="@android:color/white" />
        </shape>
    </item>

    <item android:width="600dp"
        android:height="200dp"
        android:top="100dp">
        <shape android:shape="rectangle">
            <gradient
                android:angle="0"
                android:endColor="@android:color/holo_green_light"
                android:startColor="@android:color/holo_blue_light"
                android:type="linear" />
            <corners android:radius="100dp" />
        </shape>
    </item>

</layer-list>

Here is a preview image


试试这个