在Android中的EditText左侧设置图像

时间:2012-09-16 03:50:48

标签: android drawable android-edittext

我有一个联系表单,我想在我的编辑文本中添加一些图标以便更好地查看。我想创建类似下面的EditText。

enter image description here

我有如下的EditText。我得到了类似的结果。我希望图像绝对在左侧,就像在上面的图像中一样。我知道内部EditText正在使用Nine Patch图像,我认为这就是为什么结果有些不同。任何人都知道如何解决这个问题吗?

enter image description here

<EditText
            android:id="@+id/name"
            android:layout_width="fill_parent"
            android:layout_height="51dip"
            android:hint="@string/name"
            android:inputType="text"
            android:drawableLeft="@drawable/name_icon_edittext" />

4 个答案:

答案 0 :(得分:13)

不是使用android:drawableLeft="@drawable/name_icon_edittext",而是为ImageView创建单独的name_icon。 通过这种方式,您可以更好地控制将其放在layout

注意:我假设您layoutRelativeLayout

答案 1 :(得分:12)

如果您想在文字和图片之间添加一些空格,请使用&#39; drawablePadding&#39; xml中的属性

android:drawablePadding="10dp"

这里是完整的示例,如何在xml文件中的edittext中使用

             <EditText
                android:id="@+id/edittext"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:drawableLeft="@drawable/ic_left"
                android:drawablePadding="10dp" />

答案 2 :(得分:1)

您可以在xml文件中使用android:drawablePadding="10dp"属性。 无需为图标创建单独的imagview。

答案 3 :(得分:0)

有点旧,但为了将来的参考可能:

我会用自己想要的外观做一个9补丁图像,保留比例和除图标以外的所有图像,这样你就可以自己添加(并重复使用背景)drawableLeft属性{{1 }}。这样,只有图像的中间部分会被拉伸,但其余部分将保持不变。