2012-09-16 17 views
8

我有一個聯繫表單,我想在其中添加一些圖標到我的編輯文本中以獲得更好的外觀。我想創建EditText,如下所示。在Android的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" /> 
+2

沒有使用你可以通過設置android:paddingLeft屬性來嘗試。 –

+0

非常感謝你... – Scorpion

回答

9

而不是使用android:drawableLeft="@drawable/name_icon_edittext",爲name_icon創建單獨的ImageView。 這種方式,你有把它放在layout

注意更多的控制:我假設你layoutRelativeLayout

+0

是的,我的佈局是相對佈局...感謝您的建議,但如果我創建Imageview而不是可繪製的左側,而不是如何在更多控制方面有用嗎?你能告訴我這對應用程序有利嗎?是否與性能有關 – Scorpion

+0

我希望你在幾個不同的分辨率屏幕上檢查你的佈局並驗證它,否則如果你需要一些調整,你可以更靈活地設置填充和邊距,就像我上面提到的 –

0

有點老了,但對於將來參考也許:

我會做9貼圖自己與你想要的外觀,保持比例和除了圖標之外的所有,所以你可以自己添加它(並重新使用背景)drawableLeft財產EditText。這樣只有圖像的中間部分會被拉伸,但其餘部分將保持不變。

5

,如果你想添加你的文字和圖像之間的一些空間,然後use'drawablePadding」屬性的XML

android:drawablePadding="10dp" 

這裏是完整的例子如何在EditText上的XML文件

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