Тема «Компоненты материала Android» - измените цвет надписи TextInputLayout / TextInputEditText и подчеркните, когда поле сфокусировано - PullRequest
0 голосов
/ 21 февраля 2019

Я пытаюсь переключиться на новую тему «Компоненты материала», и единственное, что я не могу изменить, это цвет TextInputLayout / TextInputEditText для метки и подчеркивания, когда поле сфокусировано.

КогдаЯ использовал тему AppCompat, она использовала colorAccent для этого, но новая тема MaterialComponents использует colorPrimary.

Как переопределить тему MaterialComponents, чтобы использовать colorAccent только для этого сценария?

Что я пробовал:

  • расширение стиля Widget.MaterialComponents для обоих TextInputLayoutи TextInputEditText и переопределяющий colorPrimary
  • , расширяющий стиль Widget.MaterialComponents для обоих TextInputLayout и TextInputEditText, и переопределяющий colorAccent
  • Использование цвета селектора для backgroundTint в TextInputEditText * * * * * * * * *

1 Ответ

0 голосов
/ 21 февраля 2019

Вы можете сначала определить новую тему - например, так:

<style name="Theme2" parent="AppTheme">
    <item name="colorPrimary">@android:color/holo_green_dark</item>
</style>

... затем использовать ее так:

<com.google.android.material.textfield.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="@string/filter_box_hint"
    android:theme="@style/Theme2">

    <com.google.android.material.textfield.TextInputEditText
        android:id="@+id/etFilter"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="textNoSuggestions"
        android:maxLines="1"
        android:paddingTop="4dp"
        android:theme="@style/Theme2" />
</com.google.android.material.textfield.TextInputLayout>

Результат (пожалуйста, игнорируйте поле, это частьразличий):

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...