web-dev-qa-db-ja.com

AndroidでEditTextの左側に画像を設定します

見栄えを良くするために編集テキストにいくつかのアイコンを追加したい連絡フォームが1つあります。以下のようなEditTextを作成したいと思います。

enter image description here

以下のようなEditTextがあります。そして、私はそのような結果を得ました。上の画像のように、絶対に左側に配置したい。 EditTextは内部で9つのパッチイメージを使用していることを知っているので、結果が多少異なります。誰でもこれを解決する方法を知ることができますか?

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" />
14
Scorpion

Android:drawableLeft="@drawable/name_icon_edittext"を使用する代わりに、name_iconに対して個別のImageViewを作成します。これにより、layoutに配置する際の制御が強化されます

注:layoutRelativeLayoutであると想定しています

14
Tomer Mor

テキストと画像の間にスペースを追加したい場合は、xmlの「drawablePadding」プロパティを使用します

Android:drawablePadding="10dp"

ここにxmlファイルのedittextで使用する方法の完全な例があります

             <EditText
                Android:id="@+id/edittext"
                Android:layout_width="match_parent"
                Android:layout_height="wrap_content"
                Android:drawableLeft="@drawable/ic_left"
                Android:drawablePadding="10dp" />
13
Faris Jameel

XmlファイルでAndroid:drawablePadding="10dp"プロパティを使用できます。アイコン用に個別のimagviewを作成する必要はありません。

1
Milind App

少し古いですが、将来の参考のために:

プロポーションとアイコン以外のすべてを維持しながら、希望する外観で自分で9パッチイメージを作成するので、drawableLeftEditTextプロパティを使用して自分で追加(および背景を再利用)できます。そうすることで、画像の中央部分だけが引き伸ばされますが、残りは同じままです。

0
Armando