我正在尝试创建自定义形状以用作菜单抽屉的背景。我遇到的问题是我无法获得我想要的形状。目前我正在Adobe Illustrator中创建svg形状,然后将converting创建为XML drawable,但它没有达到预期的效果。如何根据其父(match_parent
)和内容(wrap_content
)获得可绘制的矢量?
menu_shape.xml 我在这方面遇到的一个问题是,这种形状并不是完全响应的,因为它基本上被挤压以适合视口,因此根据屏幕尺寸的不同而表现极为不同。
<vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt"
android:viewportWidth="597.28"
android:viewportHeight="542.16"
android:width="597.28dp"
android:height="542.16dp">
<path
android:pathData="M0.5 303.39V0.5H596.78V370.39S310.5 797.13 0.5 303.39Z"
android:fillColor="#A92324"
android:strokeColor="#231F20"
android:strokeWidth="1"
android:strokeMiterLimit="10" />
</vector>
目前的结果:
期望的结果: 期望的结果本质上是一个大的圆圈,略微向右偏移
试试这个
<vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt"
android:viewportWidth="597.28"
android:viewportHeight="542.16"
android:width="597.28dp"
android:height="542.16dp">
<path
android:pathData="M0.5 302.39V0.5H596.7V374.39S310.5 501.13 0.5 303.39Z"
android:fillColor="#A92324"
android:strokeColor="#231F20"
android:strokeWidth="1"
android:strokeMiterLimit="10" />
</vector>
尝试形状xml代码
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<padding android:left="-100dp"
android:top="-100dp"
android:right="-100dp"/>
</shape>
</item>
<item>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid
android:color="#712EF1" />
</shape>
</item>
</layer-list>