具有 OutlineBox 样式的 TextInputLayout 的可见性无法正确设置为 GONE
The visibility of TextInputLayout with OutlineBox style can't be set to GONE properly
我在 ConstraintLayout 中有三个具有 OutlineBox 样式的 TextInputLayout,如下所示。在 activity onCreate
中,我不需要显示最后一个,因此我使用这段代码(我使用的是 Kotlin)将其可见性设置为 GONE
:etCompanyName.visibility = View.GONE
.但正如您在图片中看到的那样,布局中仍保留一条窄线。我该怎么做才能正确消失 TextInputLayout?
<android.support.design.widget.TextInputLayout
android:id="@+id/tilFirstName"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlineBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<android.support.design.widget.TextInputEditText
android:id="@+id/etFirstName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_first_name" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:id="@+id/tilLastName"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlineBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tilFirstName">
<android.support.design.widget.TextInputEditText
android:id="@+id/etLastName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_last_name" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:id="@+id/tilCompanyName"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlineBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tilLastName">
<android.support.design.widget.TextInputEditText
android:id="@+id/etCompanyName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_company_name" />
</android.support.design.widget.TextInputLayout>
尝试设置可见性:属性 文本输入布局元素而不是 editText。
tilCompanyName.visibility = View.GONE
我在 ConstraintLayout 中有三个具有 OutlineBox 样式的 TextInputLayout,如下所示。在 activity onCreate
中,我不需要显示最后一个,因此我使用这段代码(我使用的是 Kotlin)将其可见性设置为 GONE
:etCompanyName.visibility = View.GONE
.但正如您在图片中看到的那样,布局中仍保留一条窄线。我该怎么做才能正确消失 TextInputLayout?
<android.support.design.widget.TextInputLayout
android:id="@+id/tilFirstName"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlineBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<android.support.design.widget.TextInputEditText
android:id="@+id/etFirstName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_first_name" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:id="@+id/tilLastName"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlineBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tilFirstName">
<android.support.design.widget.TextInputEditText
android:id="@+id/etLastName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_last_name" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:id="@+id/tilCompanyName"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlineBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:layout_marginStart="16dp"
android:layout_marginTop="16dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tilLastName">
<android.support.design.widget.TextInputEditText
android:id="@+id/etCompanyName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_company_name" />
</android.support.design.widget.TextInputLayout>
尝试设置可见性:属性 文本输入布局元素而不是 editText。
tilCompanyName.visibility = View.GONE