1

我正在尝试为 EditText 创建自定义设计。见下图,

在此处输入图像描述

我正在尝试使用如下定义的自定义形状来实现这一点。

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

    <item android:drawable="@drawable/places_ic_search"
        android:width="30dp">
        <shape
            android:shape="rectangle"></shape>
    </item>

    <item
        android:left="30dp"
        android:drawable="@color/white">
        <shape android:shape="rectangle" >
            <gradient android:startColor="#000000" android:endColor="#FFFFFF" android:angle="90"/>
        </shape>
    </item>

</layer-list>

但不显示搜索图标。我怎样才能做到这一点?

谢谢。

我已经通过微小的阳光应用了答案,编辑框看起来像这样,搜索图标没有对齐到左边。

在此处输入图像描述

4

3 回答 3

1

我编辑我的答案。编辑Shape.xml如下:

在此处输入图像描述

形状.xml

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

    <item>
        <shape android:shape="rectangle" >
            <stroke android:width="5dp" android:color="#FF0000" />
        </shape>
    </item>

    <item
        android:left="3dp"
        android:right="3dp"
        android:top="3dp"
        android:bottom="3dp"
        >
        <shape android:shape="rectangle" >
            <stroke android:width="1dp" android:color="#FF0000" />\
            <solid android:color="#FFFFFF" />
            <corners android:radius="3dp" />
        </shape>
    </item>

    <item android:gravity="left" android:left="10dp">
        <bitmap android:src="@android:drawable/ic_menu_search" android:gravity="left">

        </bitmap>
    </item>
</layer-list>
于 2016-01-20T01:36:30.177 回答
0
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle" >
            <gradient android:startColor="#FFFFFF" android:endColor="#FFFFFF" android:angle="90"/>
            <corners android:radius="3dp"></corners>
        </shape>
    </item>
    <item android:drawable="@drawable/places_ic_search"
          android:gravity="center_vertical|left"
          android:height="10dp"
          android:width="30dp">
    </item>
</layer-list>
于 2016-01-20T01:48:28.163 回答
0

我会这样做:

  1. 对于边框部分,您可以像您一样使用可绘制对象来完成
  2. 对于搜索图标,与其尝试将其放入可绘制文件中,不如将其设置在您的EditTextxml 布局中,使用android:drawableLeft,然后您可以使用android:paddingLeft和设置填充android:drawablePadding
于 2016-01-20T02:27:35.077 回答