36

我的問題是:我有一個EditText,我想在EditText中設置一個邊距,我的意思是編輯文本的內容(文本)的邊距,而不是視圖的邊距女巫我可以通過此屬性來解決:android:layout_marginLeft在編輯文本中的邊距在android中

我需要在EditText裏面的文本前後放一些空格。

我試圖設置填充,但不起作用!

這是我的XML代碼:

<FrameLayout 
    android:layout_width="wrap_content" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="2dp"> 

    <EditText android:inputType="none" 
     android:textSize="15sp" 
     android:id="@+id/editText1" 
     android:scrollHorizontally="true" 
     android:layout_height="35dp" 
     android:padding="3dip" 
     android:singleLine="true" 
     android:layout_width="160dp" 
     android:layout_weight="0" /> 

    <ImageView android:id="@+id/refreshButton" 
     android:src="@drawable/refresh" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content" 
     android:layout_gravity="center_vertical|right" /> 
</FrameLayout> 

任何一個可以幫助我做到這一點?

在此先感謝

回答

61

的填充變量應該是你在尋找什麼。你應該嘗試增加填充到10dp之類的東西來測試它是否做了任何事情。我猜測,因爲EditText的背景是9補丁,所以填充不會如您所期望的那樣發揮作用。當您將9補丁作爲背景的視圖上設置填充時,將忽略內置到9補丁中的任何填充。因此,如果9補丁有5dp填充,並且您在xml中設置了3dp填充,則不會得到8dp填充,您將得到3dp。

+0

是的,你是對的,填充是解決方案!謝謝 – 2012-03-28 20:37:16

+6

記住這些日子(2016年)這個答案有改變文本填充的問題,而不會對背景可繪製做同樣的事情。這可能看起來很奇怪,具體取決於背景(例如AppCompat base EditText樣式) – 2016-03-04 15:12:00