gpt4 book ai didi

android - 使用可绘制对象作为侧面图标的复合 EditText

转载 作者:行者123 更新时间:2023-11-30 00:25:30 25 4
gpt4 key购买 nike

我的问题是矩形的左下角区域没有任何圆角,即使我将其定义为 10dp。

有没有更好的方法将 Drawable 放在 EditText 旁边,而不是使用我愚蠢的方法?或者如何重新定义我的方法?

布局摘录:

    <EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="45dp"
android:background="@drawable/email_bordered"
android:ems="10"
android:inputType="textEmailAddress"
android:paddingLeft="34dp"
android:textSize="30sp"
android:layout_marginBottom="20dp"
/><EditText

email_bordered.xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

<!-- This controls the white background-->
<item
android:width="32dp"
android:height="90dp"
android:left="1.9dp"
android:bottom="1.9dp"
>

<shape android:shape="rectangle" >
<corners
android:topLeftRadius="10dp"
android:bottomLeftRadius="10dp"
android:topRightRadius="0dp"
android:bottomRightRadius="0dp"
/>
<solid android:color="#fff" />
</shape>
</item>
<!-- This adds the vector image -->
<item
android:bottom="50dp"
android:top="10dp"
android:width="24dp"
android:height="24dp"
android:left="5dp"
android:drawable="@drawable/ic_if_mail_461377"
android:gravity="left">

</item>

<!-- This draws the border around everything -->
<item>
<shape android:shape="rectangle">
<stroke
android:width="2dp"
android:color="#ffffff"/>
<corners
android:radius="10dp"
/>
</shape>
</item>




</layer-list>

这是预览: drawable preview

最佳答案

您可以在 EditText 中使用 drawableLeft 标签来获得所需的设计。

 <EditText
...
android:drawableLeft="@drawable/ic_if_mail_461377"
android:drawablePadding="10dp"/>

编辑

layer-list 中做了一些改动,最终的结果是这样的。

enter image description here

<EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="45dp"
android:drawableLeft="@drawable/pic"
android:drawablePadding="10dp"
android:background="@drawable/email_bordered"
android:ems="10"
android:inputType="textEmailAddress"
android:paddingLeft="4dp"
android:textSize="30sp"
/>

email_border.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

<!-- This controls the white background-->
<item
android:width="62dp"
android:height="45dp"
android:left="1.9dp"
android:bottom="1.9dp"
>

<shape android:shape="rectangle" >
<corners
android:topLeftRadius="10dp"
android:bottomLeftRadius="10dp"
android:topRightRadius="0dp"
android:bottomRightRadius="0dp"
/>
<solid android:color="#fff" />
</shape>
</item>
<!-- This adds the vector image -->



<!-- This draws the border around everything -->
<item>
<shape android:shape="rectangle">
<stroke
android:width="1.9dp"
android:color="#ffffff"/>
<corners
android:radius="10dp"
/>
</shape>
</item>
</layer-list>

关于android - 使用可绘制对象作为侧面图标的复合 EditText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45457993/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com