12

I am trying to create a layout like in the picture belowenter image description here

In the above picture the password field is in the TextInputLayout and it also have a TextView in the right side , which points to the Forget Password Activity.

I achive EditText with Textview without TextInpt layout like below using relative layout

enter image description here

XML layout:

        <EditText
            android:id="@+id/email_address"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:drawableLeft="@drawable/ic_email"
            android:drawableStart="@drawable/ic_email"
            android:drawablePadding="10dp"
            android:hint="@string/email_address"
            android:textSize="14sp"
            android:maxLines="1"
            android:inputType="textEmailAddress" />



        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

        <EditText
            android:id="@+id/etxt_password_login"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:drawableLeft="@drawable/ic_password"
            android:drawableStart="@drawable/ic_password"
            android:drawablePadding="10dp"
            android:textSize="14sp"
            android:hint="Password"
            android:layout_alignParentLeft="true"
            android:inputType="textPassword"
            android:maxLines="1"/>

            <TextView
                android:id="@+id/txt_forget_password"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:text="forget ?"
                android:textSize="12sp"
                android:layout_marginRight="10dp"
                android:textColor="#808080"
                />

        </RelativeLayout>

But If I add TextInputLayout in the EditText I can't achieve it.

How I resolve this issue?

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
Adarsh
  • 2,219
  • 2
  • 23
  • 37
  • Hi @Adarsh Ashok, did you resolved this issue. I am facing the same problem now. Can you help me – shyam.y May 10 '17 at 04:25

3 Answers3

14

Try Like this - Surround with Relative or Linear Layout to get the output like that

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <android.support.design.widget.TextInputLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
            <EditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="Password"/>

        </android.support.design.widget.TextInputLayout>
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:text="Forgot Password ?"/>
    </RelativeLayout>

Note : Set some padding right for edit text for alignment


If you type full edittext , the textview overlay for your character .

Khai Tran
  • 3
  • 2
Keerthivasan
  • 1,651
  • 1
  • 21
  • 47
1

I am trying like below and it is working for me. may be it may help you. Somehow I am unable to use TextView inside TextInputLayout, layout getting crash. But i am able to use ImageViews inside it.

<android.support.design.widget.TextInputLayout
    android:id="@+id/layoutTextInput"
    style="@style/CommonTextInputLayout"
    android:textColorHint="@color/aluminium">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal">
        <EditText
            android:id="@+id/editTextValue"
            style="@style/CommonEditText"
            android:imeOptions="actionNext"
            android:layout_marginBottom="8dp"
            android:inputType="text"/>
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="-40dp"
            android:src="@drawable/ic_tick_green"/>
    </LinearLayout>
</android.support.design.widget.TextInputLayout>
IntelliJ Amiya
  • 74,896
  • 15
  • 165
  • 198
shyam.y
  • 1,441
  • 1
  • 16
  • 17
0

Yes it is possible

Create a drawable

border.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <stroke
        android:width="0.2dp"
        android:color="@color/color_secondary" />
    <solid android:color="#fff" />

    <padding android:bottom="8dp" />
    <padding android:top="8dp" />
    <padding android:left="8dp" />
    <padding android:right="8dp" />


</shape>

****In your code..****

 <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@color/border"  **apply drawable here**
        android:orientation="horizontal">

    <EditText
        android:id="@+id/etxt_password_login"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textSize="14sp"
        android:hint="Password"
        android:inputType="textPassword"
        android:maxLines="1"/>

        <TextView
            android:id="@+id/txt_forget_password"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_centerVertical="true"
            android:text="forget ?"
            android:textSize="12sp"
            android:textColor="#808080" />

    </RelativeLayout>

finally adjust your layout as you need

Ashok Reddy M
  • 330
  • 3
  • 9
  • 1
    Hi.. i want to use EditText inside TextInputLayout and rightside of the edittext will have a TextView – Adarsh Feb 02 '17 at 05:31