我有一堆TextInputEditTexts的编辑配置文件屏幕。以前效果不错,但现在焦点下划线,光标和提示变得不可见。

有没有人遇到过同样的问题?

android - 在焦点上的TextInputLayout的TextInputEditText中,下划线,光标和提示消失了-LMLPHP

...

    <com.google.android.material.textfield.TextInputLayout
        android:id="@+id/tilFirstName"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        app:layout_constraintStart_toEndOf="@id/ivContactIcon"
        app:layout_constraintEnd_toEndOf="@id/gEnd"
        app:layout_constraintTop_toBottomOf="@id/toolbar"
        android:layout_marginStart="@dimen/margin_32"
        android:layout_marginTop="@dimen/margin_24"
        android:hint="@string/profile_edit_hint_first_name"
        >

        <com.google.android.material.textfield.TextInputEditText
            android:id="@+id/etFirstName"
            android:layout_height="wrap_content"
            style="@style/FontRoboRegularSizeMFontPrimaryOneLineMatchWrap"
            tools:text="Oleh"
            android:inputType="textCapWords"
            android:maxLines="1"
            android:nextFocusForward="@id/etLastName"
            android:imeOptions="actionNext"
            />
    </com.google.android.material.textfield.TextInputLayout>

...


更新:
更改根元素的背景后,很明显,这些元素变为白色。没有消失。

android - 在焦点上的TextInputLayout的TextInputEditText中,下划线,光标和提示消失了-LMLPHP

最佳答案

TextInputLayout使用的默认样式是

<style name="Widget.MaterialComponents.TextInputLayout.FilledBox" parent="Base.Widget.MaterialComponents.TextInputLayout">
    <!-- underline color in FilledBox style -->
    <item name="boxStrokeColor">@color/mtrl_filled_stroke_color</item>

    <!-- The color of the label when it is collapsed and the text field is active -->
    <item name="hintTextColor">?attr/colorPrimary</item>
    ....
</style>


mtrl_filled_stroke_color基于colorOnSurface

在主题中检查colorPrimarycolorOnSurface值,或使用具有上述相同属性的自定义样式。

10-07 19:23