Float Labeled EditText

Simple implementation of a Float Labeled EditText: An Android ViewGroup which uses a child EditText and puts the hint on top of the EditText when it is populated with text.

Notice

The usage has significantly changed in version 0.0.5 inspired by chrisbanes implementation which makes styling easier. If you want to use the old style, use version 0.0.4.

Usage

Add the library project or grab to build.gradle:

compile 'com.wrapp.floatlabelededittext:library:0.0.6'

or plain maven:

<dependency>
  <groupId>com.wrapp.floatlabelededittext</groupId>
  <artifactId>library</artifactId>
  <version>0.0.6</version>
  <type>aar</type>
</dependency>

and then insert the view in XML:

    <com.wrapp.floatlabelededittext.FloatLabeledEditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="This is the hint" />
    </com.wrapp.floatlabelededittext.FloatLabeledEditText>

    <!-- add some padding -->
    <com.wrapp.floatlabelededittext.FloatLabeledEditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        float:fletPadding="10dp">

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Username" />
    </com.wrapp.floatlabelededittext.FloatLabeledEditText>

    <!-- password input -->
    <com.wrapp.floatlabelededittext.FloatLabeledEditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        float:fletPaddingBottom="10dp">

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Password"
            android:inputType="textPassword" />
    </com.wrapp.floatlabelededittext.FloatLabeledEditText>

    <!-- change color of hint text-->
    <com.wrapp.floatlabelededittext.FloatLabeledEditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        float:fletPaddingBottom="10dp"
        float:fletTextAppearance="@style/floatlabelededittext">

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Styled Hint"
            android:inputType="textPassword" />
    </com.wrapp.floatlabelededittext.FloatLabeledEditText>

GitHub