2014-05-12 36 views
37

你好,我设置为EditText使用属性android:drawableLeft="@drawable/email_drawable"可绘制到左端,我试着这样设置绘制完美,但它没有设置左边的drawable和文本之间的差距。你能帮我实现吗?左边的drawable和文本之间的差距EditText

<EditText 
    android:id="@+id/emailEditText" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="@dimen/sign_up_edittext_vertical_top_margin" 
    android:drawableLeft="@drawable/email_drawable" 
    android:imeOptions="actionNext" 
    android:inputType="textEmailAddress" 
    android:singleLine="true" /> 

enter image description here

+2

使用该特性的Android:drawablePadding =“” –

回答

84

您应该添加android:drawablePadding属性您EditText。实施例的布局,可绘制10dp填充:

<EditText 
    android:id="@+id/emailEditText" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="@dimen/sign_up_edittext_vertical_top_margin" 
    android:drawableLeft="@drawable/email_drawable" 
    android:imeOptions="actionNext" 
    android:inputType="textEmailAddress" 
    android:drawablePadding="10dp" 
    android:singleLine="true" /> 
+0

我想设置绘制的不完整侧 –

+2

的填充右'的android :drawablePadding'在这种情况下设置正确的填充。 – erakitin

+0

是的我尝试过'android:drawablePadding',但它将填充设置为左,右,上,下,但我只想右侧 –

1

当设置使用android:drawableLeft/android:drawableRight属性则可以使用android:drawablePadding属性添加空间或间隙任何可拉伸。

<EditText 
    android:id="@+id/emailEditText" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="@dimen/sign_up_edittext_vertical_top_margin" 
    android:drawableLeft="@drawable/email_drawable" 
    android:imeOptions="actionNext" 
    android:drawablePadding="5dp" // set your padding or gap size here 
    android:inputType="textEmailAddress" 
    android:singleLine="true" /> 
0

移动绘制图标向左或向右使用android:paddingLeftandroid:paddingLeft不使用android:drawablePadding