Mar*_* M. 3 android android-layout
我有这个布局:
<LinearLayout
android:id="@+id/dialogCentralContent"
android:gravity="center_horizontal"
android:layout_width="220dp"
android:layout_height="wrap_content"
android:layout_below="@+id/phoneNumberInfo"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginBottom="20dp"
android:layout_centerHorizontal="true"
android:orientation="horizontal"
android:background="@drawable/edittext_white_rounded">
<EditText
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_weight="1"
android:gravity="center"
android:maxLines="1"
android:inputType="none"
android:focusable="false"
android:text="@={dataContext.phonePrefix}"
style="@style/Widget.App.PurchaseAmountEditText" />
<android.support.design.widget.TextInputLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
tools:errorEnabled="true"
app:errorText="@{dataContext.validator.phoneValidation}">
<android.support.design.widget.TextInputEditText
android:layout_height="60dp"
android:layout_width="match_parent"
android:gravity="center"
android:maxLines="1"
android:inputType="phone"
android:text="@={dataContext.phoneNumber}"
style="@style/Widget.App.PurchaseAmountEditText" />
</android.support.design.widget.TextInputLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
它看起来像这样:
如您所见,第二个EditText渲染得低于第一个。当我在 Android Studio 的可视化编辑器中查看它时,我可以看到TextInputLayout它的顶部有一些可用空间,但是设置paddingTop="0dp"没有改变任何东西。那么如何让这两个EditTexts 以相同的方式呈现呢?
默认情况下,android.support.design.widget.TextInputLayout会在顶部为浮动提示文本留出空间。如果您不使用浮动提示,您可以通过将以下内容添加到开始<TextInputLayout>元素来删除该空间。
app:hintEnabled="false"
Run Code Online (Sandbox Code Playgroud)
TextInputEditText当它为空时,常规提示文本仍将可见。
注意——这个答案不适用于当前的 Material Components 版本,它与原始版本明显不同。
| 归档时间: |
|
| 查看次数: |
1379 次 |
| 最近记录: |