有多行时如何在 EditText 上保持文本填充
How to maintain text padding on EditText when there are multiple lines
对于我正在处理的应用程序,我有一个允许用户输入数据的 editText。我已经在输入多行文本时不维护的输入上定义了填充。例如:
添加第二行文字后:
随着添加的行越来越多,我也看到父视图中edittext的位置越来越低:
我的编辑文本 XML 如下:
<EditText
android:id="@+id/message_edit"
android:layout_width="0dp"
android:layout_weight="0.75"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/dp_8"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:background="@drawable/someBackground"
android:paddingLeft="@dimen/dp_12"
android:paddingRight="@dimen/dp_3"
android:elevation="3dp"
android:focusable="true"
android:focusableInTouchMode="true"
android:hint="Type here"
android:lineSpacingExtra="@dimen/dp_4"
android:textColor="@color/black"
android:textSize="@dimen/sp_17" />
我假设这两个问题是相关的,但我不确定根本原因是什么。
相反,android:paddingLeft
和 android:paddingRight
仅使用 android:padding
来添加 padding
。检查以下内容:
<EditText
android:id="@+id/message_edit"
android:layout_width="0dp"
android:layout_weight="0.75"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/dp_8"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:background="@drawable/someBackground"
android:padding="@dimen/dp_12"
android:elevation="3dp"
android:focusable="true"
android:focusableInTouchMode="true"
android:hint="Type here"
android:lineSpacingExtra="@dimen/dp_4"
android:textColor="@color/black"
android:textSize="@dimen/sp_17" />
结果:
对于我正在处理的应用程序,我有一个允许用户输入数据的 editText。我已经在输入多行文本时不维护的输入上定义了填充。例如:
添加第二行文字后:
随着添加的行越来越多,我也看到父视图中edittext的位置越来越低:
我的编辑文本 XML 如下:
<EditText
android:id="@+id/message_edit"
android:layout_width="0dp"
android:layout_weight="0.75"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/dp_8"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:background="@drawable/someBackground"
android:paddingLeft="@dimen/dp_12"
android:paddingRight="@dimen/dp_3"
android:elevation="3dp"
android:focusable="true"
android:focusableInTouchMode="true"
android:hint="Type here"
android:lineSpacingExtra="@dimen/dp_4"
android:textColor="@color/black"
android:textSize="@dimen/sp_17" />
我假设这两个问题是相关的,但我不确定根本原因是什么。
相反,android:paddingLeft
和 android:paddingRight
仅使用 android:padding
来添加 padding
。检查以下内容:
<EditText
android:id="@+id/message_edit"
android:layout_width="0dp"
android:layout_weight="0.75"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/dp_8"
android:layout_marginLeft="5dp"
android:layout_marginBottom="5dp"
android:background="@drawable/someBackground"
android:padding="@dimen/dp_12"
android:elevation="3dp"
android:focusable="true"
android:focusableInTouchMode="true"
android:hint="Type here"
android:lineSpacingExtra="@dimen/dp_4"
android:textColor="@color/black"
android:textSize="@dimen/sp_17" />
结果: