¿Qué es TextInputLayout?

Es un nuevo widget que extiende de la clase ViewGroup, introducido por Google en el Google I/O 2015 dentro de la libreria de diseño de soporte con el objetivo de mejorar y darle un estilo Material Design al EditText modificando la forma en como se visualiza el atributo <hint> con una pequeña animación.

Importar la libreria de soporte

Para usar TextInputLayout en tu proyecto primero debes importar dos librerias. La primera es appcompat-v7, la cual se asegura de que el estilo Material es compatible con versiones anteriores. La segunda es la libreria de diseño de soporte.

En el archivo build.gradle de tu proyecto, añade las siguientes lineas dentro de las dependencias

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])

compile 'com.android.support:design:25.2.0'
compile 'com.android.support:appcompat-v7:25.2.0'
}

Envolver EditText en un TextInputLayout

TextInputLayout funciona como contenedor similar a un ScrollView y solo acepta un elemento como hijo, el cual debe ser un EditText ys se integra de la siguiente manera: