2012-09-16 25 views
8

私は、より良い外観のために私の編集テキストにいくつかのアイコンを追加したい1つの連絡フォームを持っています。以下のような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

がやった中でのEditTextで使用する方法の完全な例です。 android:paddingLeftプロパティを設定してみてください。 –

+0

ありがとうございました... – Scorpion

答えて

9

代わりのandroid:drawableLeft="@drawable/name_icon_edittext"を使用して、name_iconに対して別々ImageViewを作成します。 あなたがlayout

注意の上に置くことで、より制御持ってこの方法:私はあなたのlayoutを想定していますがRelativeLayout

+0

はい私のレイアウトは相対レイアウトです...あなたの提案に感謝します。しかし、私はImageviewをdrawableの代わりに、より制御の面でどのように役立つのでしょうか?あなたはアプリにどのように有益であるか教えていただけますか?それはパフォーマンスか何かに関連していますか? – Scorpion

+0

あなたはいくつかの異なる解像度の画面であなたのレイアウトをチェックし、それを確認してください、あなたは上記のようにより柔軟に余白と余白を設定することができます –

0

少し古いですが、多分今後の参考のために:

私はどうなるのあなたが望む外観で9つのパッチ画像を自分自身で作成し、アイコン以外のすべての部分を保持するようにしてください。のプロパティEditTextであなた自身で追加して(背景を再利用できます)そうすれば、画像の中央部分だけが引き伸ばされますが、残りは同じままです。

5

あなたは、XMLで「プロパティをuse'drawablePaddingあなたのテキストと画像の間にいくつかのスペースを追加したい場合は

ここ
android:drawablePadding="10dp" 

xmlファイル

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