2014-07-18 21 views
0

我想一个drawableleft添加到EDITTEXT:如何将drawableleft边框与其父edittext的边框相匹配?

<EditText 
    android:id="@+id/editUserName" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:drawableLeft="@drawable/icon_email" 
    android:hint="@string/login_identity_hint" 
    android:textSize="12sp" /> 

这里是如何看起来像:

enter image description here

正如你看到的,图像不匹配其父母的边界,有即使我没有设置任何填充,也是从左边,底部和顶部填充。我能做些什么呢?

我也尝试以下方法:

<RelativeLayout 
      android:id="@+id/editUserNameContainer" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" > 

      <ImageView android:id="@+id/img" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:background="@drawable/icon_email" 
       android:layout_alignParentLeft="true"/> 

      <EditText 
       android:layout_toRightOf="@+id/img" 
       android:id="@+id/editUserName" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:drawablePadding="5dp" 
       android:hint="hint" 
       android:textSize="12sp" /> 
     </RelativeLayout> 

但是这一次,它看起来像如下:影像和EditText上的高度不匹配,并且他们之间有一个小的差距:

enter image description here

谢谢。

回答

1

我想你可以得到它是如何想的唯一的办法就是做这样的事情....

删除安卓:从EditText上

drawablePadding =“5DP”

删除机器人:layout_toRightOf = “@ + ID/IMG” 从EditText上

添加的android:paddingLeft = “50dp”到的EditText

添加机器人:layout_alignParentLeft =“真”到ImageView的

这将只是把图像在你编辑文本的顶部,使用填充后,在编辑文本框中的文本向右移动了一下图片。您可能需要作出调整图像视图,使其适合恰到好处

让我知道这是如何工作!

<ImageView android:id="@+id/img" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@drawable/icon_email" 
    android:layout_alignParentLeft="true"/> 

<EditText 
    android:layout_alignParentLeft="true" 
    android:id="@+id/editUserName" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:paddingLeft="50dp" 
    android:hint="hint" 
    android:textSize="12sp" />