4

Я пытаюсь создать макет, как на картинке ниже enter image description hereAndroid: Дисплей TextView в правой стороне EditText, которая находится в TextInputLayout

В приведенном выше рисунке в поле пароля находится в TextInputLayout, и это также иметь TextView в правой части, что указывает на действие «Забыть пароль».

Я achive EditText с TextView без макета TextInpt, как показано ниже, используя относительное расположение

enter image description here

код - файл XML

 <EditText 
      android:id="@+id/email_address" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:drawableLeft="@drawable/ic_email" 
      android:drawableStart="@drawable/ic_email" 
      android:drawablePadding="10dp" 
      android:hint="@string/email_address" 
      android:textSize="14sp" 
      android:maxLines="1" 
      android:inputType="textEmailAddress" /> 



     <RelativeLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 

     <EditText 
      android:id="@+id/etxt_password_login" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:drawableLeft="@drawable/ic_password" 
      android:drawableStart="@drawable/ic_password" 
      android:drawablePadding="10dp" 
      android:textSize="14sp" 
      android:hint="Password" 
      android:layout_alignParentLeft="true" 
      android:inputType="textPassword" 
      android:maxLines="1"/> 

      <TextView 
       android:id="@+id/txt_forget_password" 
       android:layout_width="wrap_content" 
       android:layout_height="match_parent" 
       android:layout_alignParentRight="true" 
       android:layout_centerVertical="true" 
       android:text="forget ?" 
       android:textSize="12sp" 
       android:layout_marginRight="10dp" 
       android:textColor="#808080" 
       /> 

     </RelativeLayout> 

Но если добавить TextInputLayout в EditText I не может этого достичь. Попробуйте ищите много.

? Как мы reslove вышеуказанной проблемы

спасибо ..

+0

Привет @Adarsh ​​Ashok, сделал вы решили эту проблему. Сейчас я столкнулся с такой же проблемой. Можете ли вы мне помочь? –

ответ

6

Попробуйте Как это - Окружите Relative или Linear Layout, чтобы получить выход, как этот

<RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 
     <android.support.design.widget.TextInputLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content"> 
      <EditText 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:hint="Password"/> 

     </android.support.design.widget.TextInputLayout> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentRight="true" 
      android:layout_centerVertical="true" 
      android:text="Forgot Password ?"/> 
    </RelativeLayout> 

Примечание: Установить некоторое дополнение право редактирования текста для выравнивания

0

Да можно

Создать Drawable

border.xml

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 

    <stroke 
     android:width="0.2dp" 
     android:color="@color/color_secondary" /> 
    <solid android:color="#fff" /> 

    <padding android:bottom="8dp" /> 
    <padding android:top="8dp" /> 
    <padding android:left="8dp" /> 
    <padding android:right="8dp" /> 


</shape> 

**** В вашем коде .. ****

<LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:background="@color/border" **apply drawable here** 
     android:orientation="horizontal"> 

    <EditText 
     android:id="@+id/etxt_password_login" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:textSize="14sp" 
     android:hint="Password" 
     android:inputType="textPassword" 
     android:maxLines="1"/> 

     <TextView 
      android:id="@+id/txt_forget_password" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:layout_centerVertical="true" 
      android:text="forget ?" 
      android:textSize="12sp" 
      android:textColor="#808080" /> 

    </RelativeLayout> 

окончательно отрегулируйте ваш макет так, как вам нужно

+1

Привет .. Я хочу использовать EditText внутри TextInputLayout, а права edittext будут иметь TextView –

0

Я стараюсь, как показано ниже, и он работает для меня. может быть, это может вам помочь. Как-то я не могу использовать TextView внутри TextInputLayout, макет становится краш. Но я могу использовать ImageViews внутри него.

<android.support.design.widget.TextInputLayout 
    android:id="@+id/layoutTextInput" 
    style="@style/CommonTextInputLayout" 
    android:textColorHint="@color/aluminium"> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="horizontal"> 
     <EditText 
      android:id="@+id/editTextValue" 
      style="@style/CommonEditText" 
      android:imeOptions="actionNext" 
      android:layout_marginBottom="8dp" 
      android:inputType="text"/> 
     <ImageView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="-40dp" 
      android:src="@drawable/ic_tick_green"/> 
    </LinearLayout> 
</android.support.design.widget.TextInputLayout> 
+0

, пробовал этот ответ. но функция TextInputlayout не работает ... –

+0

Используйте FrameLayout вместо Linear Layout. –

 Смежные вопросы

  • Нет связанных вопросов^_^