删除TextInputLayout额外的顶部填充

0le*_*leg 6 android padding android-textinputlayout

TextInputLayout似乎总是在顶部有一些额外的填充(无论所有边距/填充都设置为0):

在此输入图像描述

布局如下:

<android.support.design.widget.TextInputLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <android.support.v7.widget.AppCompatEditText
            android:id="@+id/txt_amount"
            style="@style/EditTextStyle"
            android:hint="@string/hint_amount"
            android:inputType="numberDecimal"/>
    </android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)

如何删除这个额外的空间?

Raj*_*ram 22

您可以通过设置app:hintEnabled="false"为TextInputLayout 来移除AppCompatEditText上方的额外空间,但在重新启用之前它不会显示提示.

有关更多信息,请访问Android开发者网站-TextInputLayout

结帐以下代码

<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:hintEnabled="false">

    <android.support.v7.widget.AppCompatEditText
        android:id="@+id/txt_amount"
        style="@style/EditTextStyle"
        android:hint="@string/hint_amount"
        android:inputType="numberDecimal"/>
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)

希望这有用..

@Rajesh


Ali*_*ber 11

接受的答案在版本上对我不起作用 -1.2.1所以我做了一些实验并意识到填充实际上并不是来自TextInputLayout,而是来自TextInputEditText. 所以首先我从中删除了填充,但它看起来不均匀,所以我将自定义填充设置为TextInputEditText并且它工作正常。只需将此行添加android:padding="16dp"TextInputEditText用您想要的值替换 16dp 即可。


小智 7

有这样的结构:

<com.google.android.material.textfield.TextInputLayout
                    android:id="@+id/til_project"
                    style="@style/LoginTextInputLayoutStyle"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_gravity="center"
                    app:errorEnabled="false">

                    <com.google.android.material.textfield.TextInputEditText
                        android:id="@+id/totalPiecesProduct"
                        android:layout_gravity="center"
                        android:gravity="center"
                        android:padding="0dp"
                        android:textSize="13sp"
                        style="@style/TextInputEditTextStyle"/>

                </com.google.android.material.textfield.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)

关键是:

app:errorEnabled="false"TextInputLayout

`android:padding="0dp"` in `TextInputEditText`
Run Code Online (Sandbox Code Playgroud)

前:

在此处输入图片说明

在此处输入图片说明