Этот вопрос связан с двумя другими вопросами, которые я специально назову ниже. Разница в том, что я специально прошу способ изменить цвет без использования базы AppTheme
.
В первом связанном вопросе предлагаемое решение включает установку
<item name="colorAccent">@color/Color Name</item>
in AppTheme
Тем не менее, в нем также говорится о создании темы/стиля специально для TextInputLayout
, которая выглядит следующим образом:
<style name="TextLabel" parent="TextAppearance.AppCompat">
<!-- Hint color and label color in FALSE state -->
<item name="android:textColorHint">@color/Color Name</item>
<item name="android:textSize">20sp</item>
<!-- Label color in TRUE state and bar color FALSE and TRUE State -->
<item name="colorAccent">@color/Color Name</item>
<item name="colorControlNormal">@color/Color Name</item>
<item name="colorControlActivated">@color/Color Name</item>
</style>
Таким образом, colorAccent
устанавливается дважды. Я попробовал это и пришел к выводу, что конкретная тема для TextInputLayout
не нужна, так как получил один и тот же результат, как с ней, так и без нее. Достаточно только установить colorAccent
в AppTheme
. Это работает, но не обязательно то, что я хочу/нужно.
Во втором связанном вопросе люди предлагают снова изменить AppTheme
и установить colorAccent
(и другие атрибуты).
Однако я не нахожу это решение правильным/удовлетворительным. Должен быть способ специально изменить этот один цвет, не меняя стиль всего приложения, что человек, задающий второй вопрос, также критикует в одном из своих комментариев.
Итак, то, что я специально ищу здесь, — это решение в XML или программно для конкретного изменения цвета плавающей подсказки/метки и курсора TextInputLabel
+ TextInputEditText
Комбо. В основном то же самое поведение, которое я получил бы при установке colorAccent
.
Есть ли способ сделать это или разработчики SDK серьезно сделали это возможным, только установив colorAccent
?
PS Я понимаю, что это может работать с созданием новой темы, наследующей от AppTheme
и устанавливающей ее для действий, которые я хочу иметь определенного цвета. Однако, как я уже сказал, это не то, что я ищу.