如何创建带圆角的三角形?

时间:2021-06-12 08:29:13

标签: android android-drawable shapes

我必须创建一个这样的形状

enter image description here

我将创建一个圆角矩形并将三角形放置在矩形的中心底部。

到目前为止我有我的矩形

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#001E33" />
<corners android:radius="30dp" />
</shape>

我创建了一个向上三角形

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <rotate
        android:fromDegrees="45"
        android:pivotX="-40%"
        android:pivotY="87%"
        android:toDegrees="45">
        <shape android:shape="rectangle">
            <stroke
                android:width="10dp"
                android:color="@android:color/transparent" />
            <solid android:color="#000000" />
            <corners android:radius="30dp"/>
        </shape>
    </rotate>
</item>
</layer-list>

如何使三角形指向下方以及如何将这两个文件组合成一个可绘制对象?

2 个答案:

答案 0 :(得分:0)

在 Adob​​e illustrator(或其他类似软件)中绘制并使用 svg 文件格式。

答案 1 :(得分:0)

试试这个

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

    <item
       android:left="40dp"
        android:right="40dp">

        <rotate
            android:fromDegrees="45">
            <shape android:shape="rectangle">
                <size android:width="100dp"
                    android:height="100dp"/>
                <padding android:bottom="30dp"
                    />
                <stroke
                    android:width="30dp"
                    android:color="@android:color/transparent" />
                <solid android:color="#001E33" />
                <corners android:radius="30dp"/>
            </shape>
        </rotate>
    </item>

    <item>
        <shape>

        <solid android:color="#001E33" />
        <corners android:radius="30dp" />
        </shape>
    </item>

</layer-list>

我们可以在图层列表中添加多个形状项。

相关问题