使用drawableLeft的图像不适合EditText字段

时间:2016-03-15 10:06:41

标签: android xml

我尝试使用EditText将图片放入drawableLeft本身,而没有任何padding或"空格"周围。

这就是现在的图像

enter image description here

它应该是这样的样子

enter image description here

我尝试增加图片本身的大小,但它使EditText扩展得更多。

这里是XML文件:

 <EditText
    android:layout_marginTop="6dp"
    android:id="@+id/login_password"
    android:layout_width="315dp"
    android:layout_height="wrap_content"
    android:textSize="17dp"
    android:textColor="#8d8e8f"
    android:hint="Password"

    android:drawableLeft="@drawable/sample"
    android:singleLine="true"
    android:inputType="textPassword"
    android:layout_below="@+id/login_name"
    android:layout_centerHorizontal="true" />

fit中的图片EditText怎么样?对图像本身有什么看法吗?

3 个答案:

答案 0 :(得分:1)

您可以尝试使用LinearLayout。在LinearLayout中的意思,你应该把Editext的可绘制图像作为背景,然后将它分成三部分,第一部分用于密码_image,第二部分用于你的EditText,第三部分用于你的{INVKIBLE查看,阻止您在最后触摸EditText

                   <LinearLayout
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center"
                        android:background="@drawable/EDITEXT_DRAWABLE"
                        android:gravity="center_vertical"
                        android:padding="5dp"
                        android:weightSum="2">

                        <ImageView

                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:layout_weight="0.4"
                            android:gravity="left|center"
                            android:src="@drawable/sample" />


                        <EditText
                            android:id="@+id/password_et"
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:layout_gravity="center_vertical"
                            android:layout_weight="1.5"
                            android:background="@android:color/transparent"
                            android:ems="10"
                            android:gravity="center"
                            android:hint="********"
                            android:inputType="textPassword"
                            android:paddingLeft="-10dp"
                            android:singleLine="true"
                            android:imeOptions="actionDone"
                            android:textColor="@android:color/white"
                            android:textColorHint="@android:color/white" />

                        <ImageView
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:layout_gravity="center_vertical|left"
                            android:layout_weight="0.1"
                            android:paddingLeft="8dp"
                            android:paddingRight="8dp"
                            android:src="@drawable/sample"
                            android:visibility="invisible" /> ///PUT THE VIEW INVIIBLE

                    </LinearLayout>

答案 1 :(得分:0)

只需使用Fram布局就可以使用框架布局并在其中编辑文本并创建图像视图将图像视图的背景设置为向右或向左移动和重力

<FrameLayout
android:layout_width="match_parent"
android:layout_height="25dp">

<EditText
    android:layout_width="match_parent"
    android:layout_height="25dp"
    android:layout_gravity="left|center_vertical"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="10dp"
    android:background="@drawable/border_round"
    android:drawableLeft="@color/place_autocomplete_search_text"
    android:drawableStart="@drawable/places_ic_search"
    android:drawableRight="@drawable/arrowxml">
</EditText>
<ImageView
    android:layout_width="25dp"
    android:background="@android:color/transparent"
    android:scaleType="centerCrop"
    android:layout_gravity="right"
    android:src="@drawable/searcharrow"
    android:layout_height="25dp" />

答案 2 :(得分:-1)

使用此...........

             <EditText
                android:id="@+id/user_name"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/editback"
                android:drawableLeft="@drawable/useremail"
                android:drawablePadding="10dp"
                android:hint="@string/user_name"
                android:padding="7dp"
                android:singleLine="true"
                android:textColor="#9291A1"
                android:textSize="15sp" />