Цвет фона подсказки / метки выделенного TextInputLayout - PullRequest
1 голос
/ 05 мая 2020

Я пытаюсь стилизовать TextInputLayout с OutlinedBox, обертывающим TextInputEditText. Я уже смог установить цвет рамки и атрибуты цвета текста подсказки в зависимости от состояния, но я не могу применить белый фон к области внутри поля. Многие вопросы связаны с цветом текста подсказки, и лишь некоторые из них сообщают о таком поведении без надлежащего решения. Этот вопрос сообщает об той же проблеме, но, как указано в ответе, похоже, нет решения.

В любом случае, как вы можете видеть здесь , применив фон для внутреннего TextInputEditText, подсказка / метка фактически действует, как задумано, но TextInputLayout теряет закругленную границу. Значит, должен быть способ применить к подсказке «прозрачный» фон, верно?

Макет (.... это просто атрибуты идентификатора и ограничения)

<androidx.constraintlayout.widget.ConstraintLayout
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:background="@color/colorPrimary"
  ....
    <com.google.android.material.textfield.TextInputLayout
       style="@style/LoginTextInputLayout"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        ... >
    <com.google.android.material.textfield.TextInputEditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:textSize="18sp"/>
    </com.google.android.material.textfield.TextInputLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

Стиль (TextInputLayout стилизация выполняется здесь только сейчас)

<style name="LoginTextInputLayout" parent="Widget.MaterialComponents.TextInputLayout.OutlinedBox">
    <item name="android:textColorHint">@color/colorAccent</item>
    <item name="hintTextColor">@color/colorAccent</item>
    <item name="boxStrokeColor">@color/text_input_layout_login_selector</item>
    <item name="boxStrokeWidthFocused">1dp</item>
</style>

Есть ли способ сохранить «прозрачный фон» для плавающей метки подсказки, контура для рамки и фона для внутренней области?

...