【问题标题】:How to remove bottom padding from TextInputLayout如何从 TextInputLayout 中删除底部填充
【发布时间】:2018-11-23 23:29:03
【问题描述】:

第一张图就是我想要的。第二张图是我实现的。 如您所见,TextInputLayout 底部有一个填充,使灰色背景溢出edittext 行。

请不要建议负边距或填充,因为它在较新的 API 中不起作用。

这是我用于第一个文本输入布局的 XML。

<android.support.design.widget.TextInputLayout
    android:id="@+id/fullNameTextLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginEnd="16dp"
    android:layout_marginStart="16dp"
    android:layout_marginTop="32dp"
    android:paddingTop="10dp"
    android:background="#EAEAEA"
    android:hint="Full Name"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">

    <EditText
        android:id="@+id/fullNameEditText"
        style="@style/Regular15Grey1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textCapWords"
        android:paddingLeft="12dp"
        android:paddingRight="12dp"
        android:singleLine="true"/>
</android.support.design.widget.TextInputLayout>

【问题讨论】:

标签: java android kotlin textinputlayout


【解决方案1】:

我发现填充实际上是错误文本的空间,如果您禁用错误(例如,在带有 app:errorEnabled="false" 的布局 XML 中)填充更接近您的预期。

【讨论】:

    【解决方案2】:
     <android.support.design.widget.TextInputLayout
            android:id="@+id/fullNameTextLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginEnd="16dp"
            android:layout_marginStart="16dp"
            android:layout_marginTop="32dp"
            android:paddingTop="10dp"
            android:hint="Full Name"
    
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent">
    
            <EditText
                android:id="@+id/fullNameEditText"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:inputType="textCapWords"
                android:text=""
                android:paddingBottom="16dp"
                android:paddingStart="8dp"
                android:paddingEnd="8dp"
                android:layout_marginBottom="-8dp"
                android:singleLine="true"/>
        </android.support.design.widget.TextInputLayout>
    

    【讨论】:

      【解决方案3】:

      也许在EditText下方添加一个2dp line

      <View
              android:layout_width="match_parent"
              android:layout_height="2dp"
              android:background="@android:color/black" />
      

      您可以稍后更改颜色和宽度

      【讨论】:

        【解决方案4】:

        您可以在 EditText 中使用android:layout_marginBottom="-xdp"

         <EditText
                android:id="@+id/fullNameEditText"
                style="@style/Regular15Grey1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:inputType="textCapWords"
                android:paddingLeft="12dp"
                android:layout_marginBottom="-xdp"
                android:paddingRight="12dp"
                android:singleLine="true"/>
        

        x 的值取决于您的设计。

        希望对你有帮助

        【讨论】:

          猜你喜欢
          • 2020-01-05
          • 1970-01-01
          • 2020-06-12
          • 2012-09-02
          • 2017-09-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多