在布局中创建自定义曲线,就像这张图片

create custom curved in a layout, like this image

首先,请原谅我,我的英语不好。 我想设计一个自定义 xml 布局,如下所示:

我正在尝试创建顶部弯曲,但我不知道它是如何设计的!

这是我的输出:

和我的 xml 代码:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
    android:top="100dp"
    android:bottom="10dp">

    <shape android:shape="rectangle">
        <stroke
            android:width="3dp"
            android:color="#000000" />
        <solid android:color="@android:color/background_light" />
        <corners
            android:bottomLeftRadius="0dp"
            android:bottomRightRadius="0dp"
            android:topLeftRadius="0dp"
            android:topRightRadius="0dp" />

    </shape>
</item>

我还有一个问题: 有网站可以在线制作这个设计吗?

该形状对于形状 xml 来说太复杂了。

Easy/Fast 解决方案: 创建一个 VectorDrawable 或任何其他可绘制对象并将其导入到您的项目中。

Complex/Time 使用选项: 你可以从玩贝塞尔曲线开始。因为你的曲线是对称的,你可以先处理一半的图像,然后镜像你在前半部分所做的曲线。 有很多关于如何使用贝塞尔曲线的例子,但这会很耗时,你需要理解这个概念,并不断测试以达到你想要的效果。

最好的方法是有一个 VectorDrawable:快速得到结果,干净的方法,不需要写一行代码:)