1

我将这个drawable设置为布局的背景(我在形状之后调用九个补丁,这样你就可以看到它绘制的内容):

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

<item>
    <shape>
        <solid android:color="#F000" />

        <stroke
            android:width="1px"
            android:color="#BB000000" />

        <padding
            android:bottom="7dp"
            android:left="10dp"
            android:right="10dp"
            android:top="7dp" />

        <corners
            android:topLeftRadius="0dp"
            android:topRightRadius="0dp"
            android:bottomLeftRadius="15dp"
            android:bottomRightRadius="15dp" />

        <gradient
            android:angle="270"
            android:startColor="#FFDF00"
            android:centerColor="#FFD700"
            android:endColor="#D4AF37"
            android:type="linear" />
    </shape>
</item>

<item>
    <bitmap android:src="@drawable/outerglow" />
</item>


在此处输入图像描述

如您所见,九个补丁没有达到我想要的大小。我认为它需要添加一些填充,与 相同shape,但 abitmap不接收属性<padding>。恐怕我不能添加<gradient>到九个补丁,因为那样我将无法添加<corners>

我想通过 XML 组织它,所以避免通过 Java 提供解决方案。谢谢!

4

1 回答 1

1

您最好将整个可绘制对象设置为 9-patch。我不确定你可以这样混搭。

于 2012-11-13T22:26:10.087 回答