Como flutuar à esquerda com o rótulo (dica) em TextInputLayout?
Eu estou usando TextInputLayout e no qual eu defino um drawableLeft e quando clico em edittext o rótulo já está flutuando, mas quero flutuar o drawable esquerdo também com o rótulo. Como posso conseguir, veja a imagem em anexo ...
Agora, quando clico em "Title", apenas o leble está flutuando, mas quero que ambos estejam flutuando "leftdrawable" e "label" quando focados. E antes de clicar, parecerá uma linha normal como "Data do Serviço".
Meu código está abaixo ..
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/input_layout_cardnum"
>
<ImageView
android:id="@+id/imgLeft"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_gravity="bottom"
android:src="@mipmap/ic_launcher"
android:layout_marginBottom="10dp"
/>
<android.support.design.widget.TextInputLayout
android:id="@+id/input_layout_cardnums"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<EditText
android:id="@+id/cardnumEditTexst"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLength="255"
android:singleLine="true"
android:hint="hello"
android:drawableLeft="@null"
android:paddingLeft="35dp"
/>
</android.support.design.widget.TextInputLayout>
</FrameLayout>
E no meu código, estou definindo uma animação no onFocus, para que ela fique no topo com o rótulo
final Animation animation = AnimationUtils.loadAnimation(this,R.anim.anims);
final ImageView imgLeft = (ImageView) findViewById(R.id.imgLeft);
final EditText et = (EditText) findViewById(R.id.cardnumEditTexst);
et.setOnFocusChangeListener(new View.OnFocusChangeListener()
{
@Override
public void onFocusChange(View v, boolean hasFocus)
{
if (hasFocus)
{
if (et.getText().length() == 0)
{
imgLeft.startAnimation(animation);
}
} else
{
if (et.getText().length() == 0)
imgLeft.clearAnimation();
}
}
});
E minha animação jogará a visualização da imagem no topo
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true"
android:duration="200"
android:interpolator="@android:interpolator/linear"
>
<scale
android:fromXScale="0%"
android:fromYScale="0%"
android:toXScale="60%"
android:toYScale="60%"
android:pivotX="50%"
android:pivotY="50%"
/>
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:startOffset="100"
android:fromYDelta="0%"
android:toYDelta="-80%"/>
</set>
E definindo isso que eu tenho, agora flutuante é bom, mas veja opaddingLeft = "35dp", eu quero iniciá-lo da posição 0, veja na primeira imagem onde "Title" está sendo exibido, quero dizer que não deve haver preenchimento, mas se eu quiserretirar the paddingLeft a perda de funcionalidade flutuante.