I am using TextInputLayout with the design support library 22.2.1.
I set the value of the EditText programmatically, and when the screen appears, I can see that the hint of the TextInputLayout overlaps the text inside, before moving in the floating position.
Here a simple layout:
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="hint1" />
</android.support.design.widget.TextInputLayout>
In my Activity:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
EditText e1 = (EditText) findViewById(R.id.editText1);
e1.setText("TEXT TEST 1");
}
Does anyone know a workaround?

Currently the only way to avoid this behavior is to add the EditText programmatically.
TextInputLayout without the EditText. Programmatically or via XML inflation - doesn't matter, but it has to be empty.EditText and set its text to whatever you need.EditTExt to the TextInputLayout.Here's an example:
TextInputLayout til = (TextInputLayout) findViewById(R.id.til);
til.setHint(R.string.hint);
EditText et = new EditText(getContext());
et.setText(value);
til.addView(et);
UPDATED 21/08/2015 WITH DESIGN LIBRARY V23:
With the design support library v23 you can disable the animation:
Just use the setHintAnimationEnabled method:
textInputLayout.setHintAnimationEnabled(boolean)
Here the issue on Google Tracker.