如何解决Android如何制作自定义可绘制形状
嗨,我想在 xml 中绘制一个自定义形状,如下所示。如何在android中绘制以下形状?
方形 shape.xml:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#ffffffff"/>
<stroke android:width="3dp"
android:color="@color/white"
/>
<padding android:left="1dp"
android:top="1dp"
android:right="1dp"
android:bottom="1dp"
/>
<corners android:radius="1dp"
android:bottomrighTradius="1dp" android:bottomLefTradius="1dp"
android:topLefTradius="1dp" android:topRighTradius="1dp"/>
</shape>
解决方法
创建一个名为 svg
的新可绘制 xml:
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="100dp"
android:height="100dp"
android:viewportWidth="100"
android:viewportHeight="100">
<path
android:pathData="M78.2,90L50,61.8 21.8,90V10h56.4v40z"
android:fillColor="@color/colorPrimary"/>
</vector>
更改 pathdata
以根据您的喜好更改形状...
在您的布局 xml 中使用它,例如:
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/svg">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="My text"
android:layout_centerInParent="true"/>
</RelativeLayout>
,
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#ffffffff" />
<stroke android:width="3dp"
android:color="@color/white" />
<padding android:left="1dp"
android:top="1dp"
android:right="1dp"
android:bottom="1dp"
/>
<corners android:radius="1dp"
android:bottomRightRadius="1dp" android:bottomLeftRadius="1dp"
android:topLeftRadius="1dp" android:topRightRadius="1dp"/>
</shape>
您忘记在形状标签中指定 android:shape="rectangle"。 “线”、“椭圆”、“环”也可用于各自的形状。如果所有的角都是 1dp,只需使用 android:radius="1dp"。
,您忘记了根标签中的这部分 android:shape="rectangle" 您可以从中选择环形椭圆线和矩形形状 像这样设置你的代码
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="#ffffffff"/>
<stroke android:width="3dp"
android:color="@color/white"
/>
<padding android:left="1dp"
android:top="1dp"
android:right="1dp"
android:bottom="1dp"
/>
<corners android:radius="1dp"
android:bottomRightRadius="1dp" android:bottomLeftRadius="1dp"
android:topLeftRadius="1dp" android:topRightRadius="1dp"/>
</shape>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。