2017-02-14 5 views
0

Я пытаюсь добиться эффекта, как так: enter image description hereПозиционирование рисуем слева от TextInputLayout

Предложенный способ сделать это, чтобы добавить drawableLeft к EditText, но EditText подчеркивание проходит весь путь ниже Drawable ,

Другим возможным способом является создание ImageView слева от TextInputLayout. Проблема с этим заключается в том, что сложно сохранить значок точно в соответствии с EditText, поскольку сообщение об ошибке TextInputLayout переключает дополнительную высоту, в зависимости от того, является ли оно видимым. Это потребовало бы вычисления высоты отображения сообщений об ошибке и размещения метки под значком, чтобы переключить ее видимость, если сообщение об ошибке видимо или нет.

Есть ли хороший способ достичь этого дизайна с помощью TextInputLayout?

ответ

0

Эта работа для меня, трюк помещается в LinearLayout с горизонтальной ориентацией.

<LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="horizontal"> 
      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center_vertical" 
       android:src="@drawable/ic_user_login_dark"/> 

      <android.support.design.widget.TextInputLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="32dp" 
       android:id="@+id/username"> 

       <EditText 

        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:hint="@string/hint_username" 
        android:inputType="textPersonName" /> 

      </android.support.design.widget.TextInputLayout> 

     </LinearLayout>