我正在尝试创建一个形状以用于我的Android项目中的图像按钮,该形状实际上在左右两侧都有半个圆圈。
我以为我可以只使用带有半径的XML形状,但这只是圆角,我需要整个左侧和右侧为半圆,如下图所示。
我当前的形状XML如下:
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"
android:color="@color/white">
<corners
android:radius="60dip"
/>
<stroke
android:width="0dp"
android:color="#000000" />
<solid
android:color="@color/white" />
</shape>
但是我正在尝试获得这种效果:
您的按钮有多高?具有圆角的可绘制形状应该可以工作,您希望半径为按钮高度的一半。
您必须指定每个拐角半径,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@color/green" />
<size android:height="30dp" />
<corners
android:bottomRightRadius="15dp"
android:bottomLeftRadius="15dp"
android:topRightRadius="15dp"
android:topLeftRadius="15dp"
/>
</shape>
您不应该指定宽度,以便它可以将宽度调整为背景可绘制。