title: EditText user input being shown over the top of hint text
body: <p>I have an existing project but that has recently started displaying the edittext wrong on a recent update. I'm not what has changed as this particular part of the app, in the screenshot below, didn't get changed so I'm expecting its some bug in the support libraries but not sure. </p>
  
  <p>Basically the problem is that when the user enters text into an edittext, the hint text doesn't disappear it remains visible as shown in the screenshot below. </p>
  
  <p><a href="https://i.stack.imgur.com/TzcWF.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/TzcWF.png" alt="Screenshot showing problem"></a></p>
  
  <p>Below is the XML code for this particular layout</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:orientation="vertical"
     android:layout_width="match_parent"
     android:layout_height="match_parent"&gt;
      &lt;include layout="@layout/toolbar" /&gt;
      &lt;ScrollView
         android:layout_width="match_parent"
         android:layout_height="wrap_content"&gt;
          &lt;LinearLayout android:id="@+id/controlContainer"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:orientation="vertical" /&gt;
      &lt;/ScrollView&gt;
      &lt;TextView android:id="@+id/noPrimaryKeyInfo"
         android:background="@color/api_error_background"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:text="@string/no_primary_key_available_therefore_updates_and_deletes_cannot_be_done"
         android:textStyle="bold"
         android:layout_gravity="center_horizontal"
         android:gravity="center_horizontal"
         android:layout_alignParentBottom="true"
         android:padding="5dp"/&gt;
      &lt;TextView android:id="@+id/lblUpgradeStatus"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:visibility="gone"/&gt;
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>The EditTexts are then populated programmatically using the following code</p>
  
  <pre><code>Bundle bundle = getIntent().getExtras();
          indexAndFields = (HashMap&lt;Integer, String&gt;) bundle.getSerializable("indexAndFields");
          fieldAndValue = (HashMap&lt;Integer, String&gt;) bundle.getSerializable("fieldAndValue");
          currentTableName = bundle.getString("tableName");
  
          fieldDataList = rebuildFieldDataListFromJson(bundle.getString("tableAndDescription"));
          Log.d("RowEditor", bundle.getString("tableAndDescription"));
          lblNoPrimaryKeyInfo = (TextView)findViewById(R.id.noPrimaryKeyInfo);
  
          for (Integer data : fieldAndValue.keySet())
          {
              int index = data;
  
              FieldData fieldData = getFieldDataFromFieldName(indexAndFields.get(index));
  
              TextInputLayout textInputLayout = new TextInputLayout(this);
  
              EditText editText = new EditText(RowEditor.this);
              editText.setHint(indexAndFields.get(index));
              editText.setText(fieldAndValue.get(data));
              if (!purchaseUpgraded)
              {
                  editText.setEnabled(false);
              }
              fieldData.setEditText(editText);
              fieldDataList.remove(index);
              fieldDataList.add(index, fieldData);
  
              textInputLayout.addView(editText);
  
              if (fieldData.getIsPrimaryKey())
              {
                  isPrimaryKeyAvailable = true;
                  primaryKeyColumn = indexAndFields.get(index);
                  originalPrimaryKeyValue = fieldAndValue.get(data);
                  lblNoPrimaryKeyInfo.setVisibility(View.GONE);
              }
              controlContainer.addView(textInputLayout);
          }
          //Check if primary key is available, if not, disable all controls and display notification
          disableControlIfNoPrimaryKey();
      }
  </code></pre>