我需要在TextInputLayout文本中更改颜色,而无需更改原色。我只想更改用户键入的文本的颜色,而不是提示。我找不到任何属性可以执行此操作...我尝试的是:
<style name="AppTheme" parent="Theme.MaterialComponents.DayNight">
<!-- Color definitions -->
<item name="colorPrimary">@color/primaryColor</item>
<item name="colorPrimaryDark">@color/primaryDarkColor</item>
<item name="colorAccent">@color/secondaryColor</item>
<item name="colorControlHighlight">@color/secondaryLightColor</item>
<item name="colorButtonNormal">@color/secondaryColor</item>
<item name="colorControlActivated">@color/secondaryColor</item>
<item name="android:windowBackground">@color/colorWhite</item>
<item name="android:textColorPrimary">@color/primaryTextColor</item>
<item name="android:textColorSecondary">@color/secondaryTextColor</item>
<item name="textInputStyle">@style/inputStyle</item>
</style>
@style/inputStyle
在哪里:
<style name="inputStyle" parent="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox">
<item name="android:textColor">@color/secondaryTextColor</item>
</style>
但是它似乎不起作用。我注意到,如果我更改colorPrimary
文本颜色混乱,但是正如我所说,我无法更改它。我该怎么办?
您需要在TextInputEditText
内放置一个TextInputLayout
小部件,在其中,您可以照常设置textColor
属性。