我正在尝试水平修复TextInputLayout小部件,父级布局为线性布局。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_horizontal">
<android.support.design.widget.TextInputLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="50dp"
android:layout_gravity="center"
>
<EditText
android:id="@+id/phone_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:layout_gravity="center_horizontal"
android:textSize="25sp"
android:text="+91"
android:focusableInTouchMode="false"
android:clickable="false"
android:maxLength="5"
android:textColor="@color/white"
android:hint="@string/phone_code"
android:textCursorDrawable="@null"
android:inputType="none">
<requestFocus />
</EditText>
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="50dp"
android:layout_gravity="center"
>
<EditText
android:id="@+id/loginNo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:minWidth="200dp"
android:layout_gravity="center_horizontal"
android:textSize="25sp"
android:maxLength="10"
android:textColor="@color/white"
android:hint="@string/msg_enter_mobile"
android:digits="1234567890+"
android:textCursorDrawable="@null"
android:inputType="phone">
<requestFocus />
</EditText>
</android.support.design.widget.TextInputLayout>
</LinearLayout>
现在这个小部件有request focus
,当它专注于视图时,这个提示向上移动,让我有空间在编辑文本中写入single edittext
之前它正常工作但现在这个提示是{{1我看不到。
答案 0 :(得分:1)
从这两个中移除TextInputLayout
layout_gravity
,它将起作用:
<android.support.design.widget.TextInputLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="50dp"
//layout_gravity removed
>
错误视图
正如我的评论所述,看图像1)android:layout_marginBottom="50dp"
导致视图进入工具栏,2)避免重力(我删除了引力,因为我不想误导你的bottommargin)。
答案 1 :(得分:0)
尝试使用以下内容:两个元素的宽度为0dp,权重为1。您可以根据您想要元素占据的空间指定权重,对其中一个元素使用2的权重,您将注意到差异。希望它有所帮助。
<android.support.design.widget.TextInputLayout
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginBottom="50dp"
android:layout_gravity="center"
>
<EditText
android:id="@+id/phone_code"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:maxLines="1"
android:layout_gravity="center_horizontal"
android:textSize="25sp"
android:text="+91"
android:focusableInTouchMode="false"
android:clickable="false"
android:maxLength="5"
android:textColor="@color/white"
android:hint="@string/phone_code"
android:textCursorDrawable="@null"
android:inputType="none">
<requestFocus />
</EditText>
答案 2 :(得分:0)
将两个TextInputLayout的宽度都更改为0dp,并在其中添加权重= 1。 然后,您也可以将EditText的宽度更改为match_parent